4.1 Spring Boot 完整配置
Maven 依赖
<dependency>
<groupId>top.dlzio</groupId>
<artifactId>dlz-db-spring-boot-starter</artifactId>
<version>7.0.0</version>
</dependency>
完整 yaml 配置
# application.yml
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql://localhost:3306/test?useSSL=false&serverTimezone=Asia/Shanghai
username: root
password: 123456
dlz:
db:
# 逻辑删除字段名
logic-delete-field: is_deleted
# 预设 SQL 文件路径(classpath 下的通配符)
sqllist: [app/*]
# 是否使用数据库中的预设 SQL
use-db-sql: false
# 表结构缓存时间(毫秒,-1 为不过期)
table-cache-time: -1
# 辅助功能
helper:
# 自动更新表结构
auto-update: false
# 扫描的包名
package-name: com.example.entity
# 日志
log:
show-result: false
show-run-sql: true
show-caller: true
Java 配置
@Configuration
@EnableConfigurationProperties({DlzDbProperties.class})
public class DlzDbConfigs extends DlzDbConfig {
}
包路径:
com.dlz.db.spring.config.DlzDbConfig、com.dlz.db.spring.config.DlzDbProperties
架构组件
| 组件 | Spring 实现 | 底层 |
|---|---|---|
| ISqlExecutor | SpringSqlExecutorAdapter | JdbcTemplate |
| ITxExecutor | SpringTxExecutorAdapter | TransactionSynchronizationManager |
| ICacheExecutor | SpringCacheAdapter | JedisExecutor |
事务
使用 Spring @Transactional 注解,详见 3.3-事务管理-SpringBoot。