Spring5-JDBC

Posted rttrti

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring5-JDBC相关的知识,希望对你有一定的参考价值。

1.概述

2.JdbcTempla操作数据库

1.添加

2.修改

eg.类似于添加:

    String sql = "update t_book set user_id=?,username=? where ustatus=?";
    Object[] args = {book.getUsedId(), book.getUserName(), book.getUstatus()};
    int update = jdbcTemplate.update(sql, args);
    System.out.println(update);

3.删除

eg.类似于添加,基于id删除

public void delete(String id) {
    String sql = "delete from t_book where user_id=?";
    int update = jdbcTemplate.update(sql, id);
    System.out.println(update);
}

4.查询

1).查询返回某个值

eg. 查询表中有多少记录,返回某个值
sql语言: SELECT COUNT(*) FROM t_book 将返回一个数字表示记录数

利用JdbcTemplate实现查询返回某个值代码(queryForObject)
jdbcTemplate.queryForObject(String sql, Class<T> requiredType)

  • 参数1:sql语句
  • 参数2:返回类型的Class (int-Integer.class ...)
  • 返回2的Class类型

eg

public int selectCount() {
    String sql = "select count(*) from t_book";
    Integer count = jdbcTemplate.queryForObject(sql, Integer.class);

    return count;
}

2).查询返回对象

eg. 场景:查询图书的详情页面(一种对象)

利用JdbcTemplate实现查询返回对象(queryForObject)
jdbcTemplate.queryForObject(String sql, RowMapper<T> rowMapper, Object... args)

  • 参数1:sql语句
  • 参数2:RowMapper, 本身为一接口, 针对返回不同类型数据,使用这个接口的实现类可以完成数据封装.
    eg.new BeanPropertyRowMapper<Book>(Book.class)
    Book book = jdbcTemplate.queryForObject(sql, new BeanPropertyRowMapper<Book>(Book.class), id);
  • 参数3:sql语句值
  • 返回2的Class类型

eg.

public Book findBookInfo(String id) {
    String sql = "select * from t_book where user_id=?";
    //调用方法实现
    Book book = jdbcTemplate.queryForObject(sql, new BeanPropertyRowMapper<Book>(Book.class), id);
    return book;
}

3).查询返回集合

eg. 场景:查询图书列表分页(集合)

利用JdbcTemplate实现查询返回对象(queryForObject)
jdbcTemplate.queryForObject(String sql, RowMapper<T> rowMapper, Object... args)

  • 参数1:sql语句
  • 参数2:RowMapper.
    List<Book> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<Book>(Book.class));
  • 参数3:sql语句值(无)

eg.

public List<Book> findAllBook() {
    String sql = "selet * from t_book";

    List<Book> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<Book>(Book.class));
    return list;
}

以上是关于Spring5-JDBC的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——CSS选择器

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

片段和活动之间的核心区别是啥?哪些代码可以写成片段?

VSCode自定义代码片段——.vue文件的模板

VSCode自定义代码片段6——CSS选择器

VSCode自定义代码片段——声明函数