Spring5-JDBC
2021/8/20 23:05:52
本文主要是介绍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的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-28微服务架构中API版本控制的实践
- 2024-09-28AI给的和自己写的Python代码,都无法改变输入框的内容,替换也不行
- 2024-09-27Sentinel配置限流资料:新手入门教程
- 2024-09-27Sentinel配置限流资料详解
- 2024-09-27Sentinel限流资料:新手入门教程
- 2024-09-26Sentinel限流资料入门详解
- 2024-09-26Springboot框架资料:初学者入门教程
- 2024-09-26Springboot框架资料详解:新手入门教程
- 2024-09-26Springboot企业级开发资料:新手入门指南
- 2024-09-26SpringBoot企业级开发资料新手指南