SpringBoot整合JdbcTemplate(五)下

简介: SpringBoot整合JdbcTemplate(五)

三.三 queryForMap方法


三.三.一 方法重载


0858f320976d8e1e85c37f32fad77b63.png


通常使用的是


Map<String, Object> queryForMap(String sql, @Nullable Object... args)


方法。


三.三.二 举例,查询全部数据


三三.二.一 测试方法


  @Test
    public void queryForMapTest(){
        Map<String,Object> userMap=userService.queryForMapById(2);
        log.info(userMap);
    }


三.三.二.二 实现方法


  @Override
    public Map<String, Object> queryForMapById(Integer id) {
        String sql="select id,name,sex,age,description from user where id=?";
        Map<String,Object> map=jdbcTemplate.queryForMap(sql,id);
        return map;
    }


三.三.二.三 查看数据结果


65c4a252bbba273374607e10def17d1f.png


三.四 queryForObject方法


三.四.一 方法重载


140a5f9a254cb6b81481f372d520ae84.png


三.四.二 举例,查询全部数据


三四.二.一 测试方法


 @Test
    public void queryForSingleTest(){
        Integer count=userService.countAll();
        log.info("查询总数目,{}",count);
    }


三.四.二.二 实现方法


   @Override
    public Integer countAll() {
        String sql="select count(1) from user";
        Integer count=jdbcTemplate.queryForObject(sql,Integer.class);
        return count;
    }


三.四.二.三 查看数据结果


f115f38a762e176aad2ab21dbb031d0b.png


三.五 queryForList方法


三.五.一 方法重载


7a19e008eaec135f1e92df57058f4206.png


三.五.二 举例,查询全部数据


三.五.二.一 测试方法


   @Test
    public void queryForIdsTest(){
        List<Integer> idList=userService.queryForIdList();
        log.info(idList);
    }


三.五.二.二 实现方法


   @Override
    public List<Integer> queryForIdList() {
        String sql="select id from user";
        List<Integer> idList=jdbcTemplate.queryForList(sql,Integer.class);
        return idList;
    }


三.五.二.三 查看数据结果


4a9282cc8e58b5e9170097a2865cdd05.png


三.六 execute 方法


三.六.一 方法重载


fbf2b3ae41743ec8dee7d7af2d9f1467.png


三.六.二.一 测试方法


  @Test
    public void executeTest(){
        userService.createTable();
    }


三.六.二.二 实现方法


 @Override
    public void createTable() {
        String sql="create table dept(id int(11),name varchar(200))";
        jdbcTemplate.execute(sql);
    }


三.六.二.三 查看数据结果


dept 部门表 创建成功。


7a06ba0c734ce394592cf7440b017dbe.png


三.七 query 方法


三.七.一 方法重载


91ee4796c6cc62449a71a78e5d6d5586.png


三.七.二.一 测试方法


 @Test
    public void beanTest(){
        List<User> userList=userService.queryBeanForAll();
        userList.forEach(n->log.info(n));
    }


三.七.二.二 实现方法


 @Override
    public List<User> queryBeanForAll() {
        String sql="select id,name,sex,age,description from user ";
        List<User> userList=jdbcTemplate.query(sql,new MyUserMapper());
        return userList;
    }
    class MyUserMapper implements RowMapper<User>{
        @Override
        public User mapRow(ResultSet resultSet, int num) throws SQLException {
            //根据resultSet 表示结果集, num 表示索引行
            User tempUser=new User();
            tempUser.setId(resultSet.getInt("id"));
            tempUser.setName(resultSet.getString("name"));
            tempUser.setSex(resultSet.getString("sex"));
            tempUser.setAge(resultSet.getInt("age"));
            tempUser.setDescription(resultSet.getString("description"));
            return tempUser;
        }
    }


三.七.二.三 查看数据结果


ec2d3f91a243b1a759a5e3c884635d47.png


三.八 queryForRowSet 方法


三.七.一 方法重载


3f4d5796196698288ef9fa16ebf3430e.png


三.七.二.一 测试方法


 @Test
    public void rowSetTest(){
        List<User> userList=userService.queryRowSetForAll();
        userList.forEach(n->log.info(n));
    }


三.七.二.二 实现方法


@Override
    public List<User> queryRowSetForAll() {
        String sql="select id,name,sex,age,description from user ";
        SqlRowSet sqlRowSet=jdbcTemplate.queryForRowSet(sql);
        List<User> userList=new ArrayList<>();
        while(sqlRowSet.next()){
            User tempUser=new User();
            tempUser.setId(sqlRowSet.getInt("id"));
            tempUser.setName(sqlRowSet.getString("name"));
            tempUser.setSex(sqlRowSet.getString("sex"));
            tempUser.setAge(sqlRowSet.getInt("age"));
            tempUser.setDescription(sqlRowSet.getString("description"));
            userList.add(tempUser);
        }
        return userList;
    }


三.七.二.三 查看数据结果


24e52c24792a82d7359137e18a681c70.png


本章节的代码放置在 github 上:


https://github.com/yuejianli/springboot/tree/develop/JdbcTemplate


谢谢您的观看,如果喜欢,请关注我,再次感谢 !!!

相关文章
|
SQL Java 关系型数据库
SpringBoot从入门到精通(三十)如何使用JdbcTemplate操作数据库?
前面介绍了Mybatis数据持久化框架,Mybatis虽然功能强大,但是,使用起来还是比较复杂的。所以接下来介绍一个简单的数据持久化框架——JdbcTemplate。
SpringBoot从入门到精通(三十)如何使用JdbcTemplate操作数据库?
|
9月前
|
Java 数据库连接 数据库
SpringBoot整合持久层技术之搭建JDBCTemplate项目实战
现在有了MyBatis之后很少人使用JDBCTemplate来整合项目了,要么就是JPA技术,要么就是Mybatis来操作数据库,今天我搭建一个springboot的template项目,看看其和JPA、Mybatis有什么不同的地方,方便大家一起学习。
46 0
|
1天前
|
Java 关系型数据库 MySQL
Spring Boot使用JdbcTemplate操作mysql数据库实战(附源码 超详细)
Spring Boot使用JdbcTemplate操作mysql数据库实战(附源码 超详细)
49 0
|
6月前
|
Java 数据库连接 测试技术
微服务技术系列教程(03) - SpringBoot - 整合各种数据源(JdbcTemplate、MyBatis、JPA)
微服务技术系列教程(03) - SpringBoot - 整合各种数据源(JdbcTemplate、MyBatis、JPA)
37 0
|
9月前
|
Oracle NoSQL 关系型数据库
SpringBoot-13-使用JdbcTemplate链接Mysql数据库
在企业项目开发者,数据库的使用是必不可少的一部分,常用的数据库有mysql、oracle、sqlserver、redis等,我们接下来的几章会介绍SpringBoot中如何使用数据库,本章就介绍使用JdbcTemplate链接mysql。
87 0
|
XML Java 关系型数据库
SpringBoot 整合 JdbcTemplate|学习笔记
快速学习 SpringBoot 整合 JdbcTemplate
78 0
SpringBoot 整合 JdbcTemplate|学习笔记
|
Java 关系型数据库 MySQL
SpringBoot整合JdbcTemplate连接Mysql
SpringBoot整合JdbcTemplate连接Mysql
129 0
|
SQL Java
SpringBoot高级篇JdbcTemplate之数据更新与删除
前面介绍了JdbcTemplate的插入数据和查询数据,占用CURD中的两项,本文则将主要介绍数据更新和删除。从基本使用上来看,姿势和前面的没啥两样
804 0
SpringBoot高级篇JdbcTemplate之数据更新与删除
|
Java
SpringBoot整合JdbcTemplate
SpringBoot整合JdbcTemplate
104 0
|
Java 关系型数据库 MySQL
springboot学习-使用JdbcTemplate操作MySQL数据库
springboot学习-使用JdbcTemplate操作MySQL数据库
246 0
springboot学习-使用JdbcTemplate操作MySQL数据库