• JdbcTemplate


    1.导入jar包

    2.创建JdbcTemplate对象,依赖于数据源DataSource

           JdbcTemplate jt = new JdbcTemplate(new ComboPooledDataSource()); //依赖于数据源DataSource

    3.调用JdbcTemplate方法来完成CRUD操作

      update();

        String sql = "update t_user set password = ? where id=?";
           jt.update(sql,"111","1");
    @Test
        public void test01(){
            String sql = "insert into t_user values(null,?,?)";
            int i = jt.update(sql, "校长", "123");
            System.out.println(i);
        }

      queryForMap();会把查询出来的单个记录封装为map集合

    @Test
        public void test03(){
            String sql = "select * from t_user where id=?";
            Map<String, Object> map = jt.queryForMap(sql, 1);
            System.out.println(map);
        }

      queryForList();查询所有记录封装到list集合中

    @Test
        public void test02(){
            String sql = "select * from t_user";
            List<Map<String, Object>> maps = jt.queryForList(sql);
            for (Map<String, Object> map : maps) {
                System.out.println(map);
            }
        }

      query();   查询出来的单个对象封装为一个javabean

    @Test
        public void test04(){
            String sql ="SELECT * FROM t_user";
            List<User> userList = jt.query(sql, new RowMapper<User>() {
                @Override
                public User mapRow(ResultSet rst, int i) throws SQLException {
                    User u = new User();
                    int id = rst.getInt(1);
                    String username = rst.getString(2);
                    String password = rst.getString(3);
                    u.setId(id);
                    u.setUsername(username);
                    u.setPassword(password);
                    return u;
                }
            });
            for (User user : userList) {
                System.out.println(user);
            }
        }

    //使用RowMapper的实现类BeanPropertyRowMapper
    //注意该方法中必须保证bean中各个属性的数据名于数据库中字段名一致。数据类型也需要注意
    @Test
    public void test05(){ String sql ="SELECT * FROM t_user"; List<User> userList = jt.query(sql,new BeanPropertyRowMapper<User>(User.class)); for (User user : userList) { System.out.println(user); } }

      queryForObject();  用于聚合函数的执行

    @Test
        public void test06(){
            String sql = "select count(id) from t_user";
            Long aLong = jt.queryForObject(sql, Long.class);
            System.out.println(aLong);
        }

    4. 不用close(),因为模板会自动处理

     
  • 相关阅读:
    自动化测试===【转】Robot Framework作者建议如何选择自动化测试框架
    python实战===一行代码就能搞定的事情!
    python实战===石头剪刀布,简单模型
    python基础===取txt文件的若干行到另一个文件
    python基础===文件对象的访问模式,以及计数循环的使用方法
    linux===linux在线模拟器汇总
    python基础===两个list合并成一个dict的方法
    python基础===map和zip的用法
    python基础===正则表达式(转)
    python基础===python内置函数大全
  • 原文地址:https://www.cnblogs.com/Difcipo/p/14016776.html
Copyright © 2020-2023  润新知