发表于: 2017-09-26 23:35:41

3 748


今天完成了数据库的查询练习:

代码如下:

package jdbc;

import java.sql.*;

public class QueryTest {

   public static void main(String[] args){
           String sql="select * from USER";
           Connection conn=null;
           PreparedStatement pst=null;
           ResultSet rs=null;

           try {
               Class.forName("com.mysql.jdbc.Driver");
           } catch (ClassNotFoundException e) {
               e.printStackTrace();
           }

           try {

               conn= DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/test","root","123456");
               pst=conn.prepareStatement(sql);
               rs=pst.executeQuery(sql);
               while(rs.next()){

int id=rs.getInt("id");
                   String username=rs.getString("username");
                   String password=rs.getString("password");
                   System.out.println(id+" "+username+" "+password);
               }
           } catch (SQLException e) {
               e.printStackTrace();
           }finally{
               try {
                   rs.close();
               } catch (SQLException e) {
                   e.printStackTrace();
               }
               try {
                   pst.close();
               } catch (SQLException e) {
                   e.printStackTrace();
               }
               try {
                   conn.close();
               } catch (SQLException e) {
                   e.printStackTrace();
               }
           }
       }
}

 

结果:

数据库中的数据:

百度了一下关于JdbcTemplate的内容:

Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中。

  JdbcTemplate位于中。其全限定命名为org.springframework.jdbc.core.JdbcTemplate。要使用JdbcTemlate还需一个这个包包含了一下事务和异常控制。

JdbcTemplate主要提供以下五类方法:
execute
方法:可以用于执行任何SQL语句,一般用于执行DDL语句;
update
方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;batchUpdate方法用于执行批处理相关语句;
query
方法及queryForXXX方法:用于执行查询相关语句;
call
方法:用于执行存储过程、函数相关语句。

通常情况下,有三种种方式得到JdbcTemplate 对象。

     第一种方式:我们可以在自己定义的DAO 实现类中注入一个DataSource 引用来完 成JdbcTemplate 的实例化。也就是它是从外部注入” DataSource DAO 中,然后 自己实例化JdbcTemplate,然后将DataSource 设置到JdbcTemplate 对象中。        

     第二种方式: 在 Spring IoC 容器中配置一个 JdbcTemplate bean,将 DataSource 注入进来,然后再把JdbcTemplate 注入到自定义DAO 中。         

     第三种方式: Spring 提供了 org.springframework.jdbc.core.support.JdbcDaoSupport 类 , 这 个 类 中 定 义 了 JdbcTemplate 属性,也定义了DataSource 属性,当设置DataSource 属性的时候,会创 建jdbcTemplate 

的实例,所以我们自己编写的DAO 只需要继承JdbcDaoSupport 类, 然后注入DataSource 即可。

问题:在写代码的时候出现了一些问题,发现是数据库表的字段写错了,改好之后,还是不行,执行了一下,发现是多了一个大括号,在改正之后,能够正常的运行。

现阶段用JDBC写的java与数据库的连接,明天学习用JdbcTemplate来完成与数据库的连接。

 



返回列表 返回列表
评论

    分享到