JDBCTemplate常用API

1. JDBCTemplate是持久层(数据访问层)的技术,它封装了jdbc的操作,可以更方便的执行crud。


2. 使用需要在pom.xml中引入依赖

<dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-jdbc</artifactId>
      <version>4.3.23.RELEASE</version>
   </dependency>

3. jdbcTempalte的常用API

(1) update():执行增、删、改操作,返回影响数据库的行数

(2)queryForObject(String sql, Class requiredType): 针对单行单列查询,返回单个值,参数2是返回值类型对应的class对象

例如:

Integer count = jdbcTemplate.queryForObject(sql, Integer.class);

(3)queryForObject(String sql, RowMapper rowMapper, Object… args): 针对单行多列查询,返回一个javaBean对象
RowMapper<User> rowMapper = new BeanPropertyRowMapper<User>(User.class);
User user = jdbcTemplate.queryForObject(sql, rowMapper, params);

(4)query(String sql, RowMapper rowMapper, Object… args):针对多行

多列查询,返回javaBean对象的集合

RowMapper<User> rowMapper = new BeanPropertyRowMapper<User>(User.class);
List<User> list = jdbcTemplate.query(sql, rowMapper, params);

(5)queryForList(String sql, Class elementType) :针对多行单列的查询,返回一个简单类型的集合,比如List
String sql="select name from t_user";
List<String> names = jdbcTemplate.queryForList(sql, String.class);
return names;

注意:如果是多表连接查询返回多行多列结果,需要用RowMapper自己手动封装结果集

注意:一定要进行异常处理!!!

try {
            User user = jdbcTemplate.queryForObject(sql, rowMapper, loginUser.getUserName(), loginUser.getPasswd());
            return user;
        } catch (DataAccessException e) {
            //e.printStackTrace();
            return null;
        }
发布了138 篇原创文章 · 获赞 224 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/qq_43546676/article/details/103728634