2.2 Solon 快速开始
环境要求
| 环境 | 版本要求 |
|---|---|
| JDK | 8+ |
| Maven | 3.6+ |
| Solon | 3.x |
Maven 依赖
<dependency>
<groupId>top.dlzio</groupId>
<artifactId>dlz-db-solon-plugin</artifactId>
<version>8.0.0</version>
</dependency>
<!-- 下方 DataSource 示例使用 HikariCP -->
<dependency>
<groupId>com.zaxxer</groupId>
<artifactId>HikariCP</artifactId>
<version>4.0.3</version>
</dependency>
<!-- 下方示例连接 MySQL;使用其他数据库时替换为对应驱动 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.32</version>
<scope>runtime</scope>
</dependency>
插件通过 Solon SPI 自动加载,无需手动配置 Plugin 类,但不会替应用提供连接池实现或数据库驱动。应用必须引入所选的 DataSource 实现和 JDBC 驱动,并在 Solon 容器中提供一个 DataSource Bean,插件获取到它以后才能完成初始化。
如果使用 Solon 声明式事务 @Tran,还必须显式引入 solon-data;它在 DLZ-DB 插件中是可选依赖,不会传递给应用:
<dependency>
<groupId>org.noear</groupId>
<artifactId>solon-data</artifactId>
<version>3.0.6</version>
</dependency>
yaml 配置
# app.yml
dlz:
db:
logic-delete-field: deleted
log:
show-run-sql: true
show-caller: true
DLZ-DB Solon Plugin 本身不会根据一段通用 datasource.* YAML 自动创建数据源。如果项目没有专门的数据源插件,请显式注册:
@Configuration
public class DataSourceConfig {
@Bean
public DataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setDriverClassName("com.mysql.cj.jdbc.Driver");
config.setJdbcUrl("jdbc:mysql://localhost:3306/test?useSSL=false");
config.setUsername("root");
config.setPassword("123456");
return new HikariDataSource(config);
}
}
完整的数据源注册、插件初始化和事务说明见 4.2 Solon 完整集成。