Spring Boot & JDBC
1. Spring Boot整合JDBC操作数据库
JDBC操作数据库流程
- 加载数据库驱动
- 建立数据库连接
- 创建数据库操作对象
- 定义操作的SQL语句
- 执行数据库操作
- 获取并操作结果集
- 关闭对象,回收资源
不建议使用JDBC
将Spring JDBC整合到Spring Boot
- pom.xml引入依赖
|
|
- 修改application.yml
|
|
- DAO层代码
-
jdbcTemplate.update
适用于insert, update和delete操作 -
jdbcTemplate.queryForObject
用于查询单条记录并返回结果 -
jdbcTemplate.query
用于查询结果列表 -
BeanPropertyRowMapper
可以将数据库字段的值向数据库映射,满足驼峰标识也可以自动映射e.x. 数据库create_time映射到createTime属性
|
|
2. JDBC多数据源
(1) application.yml配置两个数据源,第一个叫primary, 第二个叫secondar,也可以自己取名:
|
|
(2) 通过Java Config将数据源注入到Spring上下文
primaryJdbcTemplate使用primaryDataSource数据源操作数据库jdbc
secondaryJdbcTemplate使用secondaryDataSource数据源操作数据库test
DataSourceConfig.java
|
|
(3) 之后修改dao层代码:
ArticleJDBCDAO.java
|
|
(4) 修改service层代码
ArticleRestJDBCServiceImpl.java
|
|
3. Spring JDBC JTA实现分布式事务
@Transactional
无法跨库完成分布式事务
通过整合JTA实现分布式事务
- 引入maven依赖
|
|
- 修改application.yml配置文件
|
|
- 编写配置类
DataSourceConfig.java
|
|
- 配置事务管理器(TM)
TransactionManagerConfig.java
|
|