matrix.boot.jdbc.properties.JdbcProperties Maven / Gradle / Ivy
The newest version!
package matrix.boot.jdbc.properties;
import lombok.Data;
import lombok.experimental.Accessors;
import matrix.boot.jdbc.enums.DataSourceType;
import matrix.boot.jdbc.enums.JdbcInitType;
import org.springframework.boot.context.properties.ConfigurationProperties;
import java.io.Serializable;
import java.util.Map;
/**
* jdbc配置
*
* @author WangCheng
*/
@ConfigurationProperties(prefix = "matrix.jdbc")
@Data
@Accessors(chain = true)
public class JdbcProperties implements Serializable {
/**
* 是否开启jdbc
*/
private boolean enabled = false;
/**
* 初始化类型,目前支持(Basic, Dynamic, ShardingJdbc)
*
* @see matrix.boot.jdbc.enums.JdbcInitType
*/
private String initType = JdbcInitType.Basic.getCode();
/**
* 数据源类型,目前支持(Druid, Hikari)
*
* @see matrix.boot.jdbc.enums.DataSourceType
*/
private String dataSourceType = DataSourceType.DRUID.getCode();
/**
* 数据库列表(第一个开启的作为主数据库)
*/
private Map dbList;
/**
* 初始化连接池数量
*/
private Integer initialPoolSize = 5;
/**
* 空闲连接池数量
*/
private Integer minIdlePoolSize = 10;
/**
* 最大激活数量
*/
private Integer maxActivePoolSize = 20;
/**
* 德鲁伊监控配置
*/
private DruidMonitor druidMonitor;
/**
* sharding JDBC规则
*/
private ShardingProperties sharding;
/**
* flyway配置
*/
private FlywayProperties flyway;
/**
* 数据库信息
*/
@Data
@Accessors(chain = true)
public static class DB implements Serializable {
/**
* 是否使用该数据库
*/
private boolean enabled = true;
/**
* 数据库驱动(可以自行引入jar包,然后替换)
*/
private String driverClass = "com.mysql.cj.jdbc.Driver";
/**
* 数据库连接信息
*/
private String url;
/**
* 用户名
*/
private String username;
/**
* 密码
*/
private String password;
/**
* 测试查询语句
*/
private String testQuery = "SELECT 1 FROM DUAL";
/**
* flyway配置
*/
private FlywayProperties flyway;
}
/**
* 德鲁伊监控配置
*/
@Data
@Accessors(chain = true)
public static class DruidMonitor implements Serializable {
/**
* 是否开启德鲁伊监控
*/
private boolean enabled = false;
/**
* 德鲁伊路径地址
*/
private String contextPath = "/druid/*";
/**
* 登录用户名
*/
private String username = "admin";
/**
* 登录密码
*/
private String password = "admin";
}
}