Spring JDBC : JDBC Template

Spring JDBC :Spring框架对JDBC简单的封装。提供了一个JDBCTemplate对象简化了JDBC的开发。

步骤:
1.导入jar包(这些jar包依赖于连接数据库连接池的jar包)
2.创建JDBCTemplate对象,依赖于数据源DataSource
  JdbcTemplate template = new JdbcTemplate(ds);
3.调用JDBCTemplate方法来进行CRUD的操作
  update():执行DML语句。增、删、改语句
  queryForMap():查询结果将结果集封装为map集合,将列名作为key,将值作为value 将这条记录封装为一个  map集合(注意:这个方法查询的结果集长度只能是1)
  queryForList():查询结果将结果集封装为list集合(注意:将每一条记录封装为一个Map集合,再将Map集  合装载到List集合中)
  query():查询结果,将结果封装为JavaBean对象
          query的参数:RowMapper
          一般我们使用BeanPropertyRowMapper实现类。可以完成数据到JavaBean的自动封装
          new BeanPropertyRowMapper<类型>(类型.class)
  queryForObject:查询结果,将结果封装为对象(一般用于聚合函数的查询)

首先定义成员变量,在下面的练习中可以简化步骤

设置成员变量
private   org.springframework.jdbc.core.JdbcTemplate template =new org.springframework.jdbc.core.JdbcTemplate(JDBCTool.getDataSource());

            

  1. 修改1号数据的 salary 为 10000


   public void test1(){
        String sql="update emp set salary=18000 where id=1001";
       int count= template.update(sql);
        System.out.println(count);
    }

                2. 添加一条记录

  public void test2(){
        String sql="insert into emp (id,ename,dept_id)values(?,?,?)";
        int count =template.update(sql,1015,"ASD",10);//在java中字符串用双引号
        System.out.println(count);
    }

                3. 删除刚才添加的记录

    public void test3(){
        String sql ="delete from emp where id=1015";
        int count =template.update(sql);
        System.out.println(count);
    }

                4. 查询id为1的记录,将其封装为Map集合

    public void test4(){
        String sql="select * from emp where id=1001";
        Map<String,Object> map= template.queryForMap(sql);
        System.out.println(map);//只能查询返回一条的记录
    }

                5. 查询所有记录,将其封装为List

 public void test5(){
        String sql="select * from emp";
       List<Map<String,Object>> list=template.queryForList(sql);
       for(Map<String,Object> stringObjectMap:list){
           System.out.println(stringObjectMap);
        }
    }

                6. 查询所有记录,将其封装为Emp对象的List集合

   public void test6(){
        String sql="select * from emp";
        List<Emp> list=template.query(sql,new BeanPropertyRowMapper<Emp>(Emp.class));
        for(Emp emp:list){
            System.out.println(emp);
        }
    }

                7. 查询总记录数

   public void test7(){
        String sql="select count(id) from emp";
        Long total=template.queryForObject(sql,Long.class);
        System.out.println(total);
    }

猜你喜欢

转载自blog.csdn.net/dreame_life/article/details/87896650