数据库客户端工具

1.3.0开始支持

数据库客户端工具是一个可以通过yml配置,自动初始化连接池的工具,不需要重复做代码的开发。

可以同时支持多个数据库连接配置。

引入工具包

<dependency>
    <groupId>com.wueasy</groupId>
    <artifactId>wueasy-database-client</artifactId>
    <version>RELEASE</version>
</dependency>

数据库连接配置

  • datasource:配置数据库连接集合,可以配置多个数据库连接
    • demo:数据源连接的key,可以配置多个,唯一
      • isLog:是否输出sql日志
      • mybatis:mybatis扫描的配置信息
        • basePackage:扫描的mapper文件路径,多个逗号分隔
        • mapperLocations:xml配置文件路径,多个逗号分隔
      • connection:数据库连接配置信息(连接信息参考druid
wueasy :
  datasource :
    demo :
      isLog: true #是否输出日志,true是,默认false
      mybatis:
        basePackage: com.wueasy.demo.mapper
        mapperLocations: classpath*:mybatis/wueasy/demo/*.xml
      connection:
        url : jdbc:mysql://localhost:3306/easy_data?useSSL=false&useUnicode=true&characterEncoding=utf-8
        username : easyadmin
        password : easyadmin
        #连接池配置
        initialSize : 10  #初始化大小
        minIdle : 10  #最小连接
        maxActive : 20  #最大连接
        maxWait : 60000  #配置获取连接等待超时的时间
        timeBetweenEvictionRunsMillis : 2000  #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
        minEvictableIdleTimeMillis : 600000  #配置一个连接在池中最小生存的时间,单位是毫秒
        maxEvictableIdleTimeMillis : 600000  #配置一个连接在池中最大生存的时间,单位是毫秒
        validationQuery : SELECT 1
        testWhileIdle : true
        testOnBorrow : false
        testOnReturn : false
        keepAlive : true
    demo2 :
      mybatis:
        basePackage: com.wueasy.demo2.mapper
        mapperLocations: classpath*:mybatis/wueasy/demo2/*.xml
      connection:
        url : jdbc:mysql://localhost:3306/test?useSSL=false&useUnicode=true&characterEncoding=utf-8
        username : easyadmin
        password : easyadmin
        #连接池配置
        initialSize : 10  #初始化大小
        minIdle : 10  #最小连接
        maxActive : 20  #最大连接
        maxWait : 60000  #配置获取连接等待超时的时间
        timeBetweenEvictionRunsMillis : 2000  #配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒
        minEvictableIdleTimeMillis : 600000  #配置一个连接在池中最小生存的时间,单位是毫秒
        maxEvictableIdleTimeMillis : 600000  #配置一个连接在池中最大生存的时间,单位是毫秒
        validationQuery : SELECT 1
        testWhileIdle : true
        testOnBorrow : false
        testOnReturn : false
        keepAlive : true

java中Mapper使用

通过@Autowired注解注入即可使用。

@Autowired
private DemoMapper demoMapper;

事物支持

事务只需要在方法中增加@Transactional注解即可

@Transactional
public void testTransaction() {
    Demo demo = new Demo();
    demo.setName("测试23");
    demoMapper.insert(demo);

    if(true) {
        throw new InvokeException(-1);
    }

    Demo2 demo2 = new Demo2();
    demo2.setName("测试3");
    demo2Mapper.insert(demo2);
}

启动类配置

由于spring boot启动时会自动注入数据库,所以启动类中需要配置取消数据库自动注入,增加DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class,DataSourceTransactionManagerAutoConfiguration.class

@SpringBootApplication(exclude={DataSourceAutoConfiguration.class,HibernateJpaAutoConfiguration.class,DataSourceTransactionManagerAutoConfiguration.class})//开启组件扫描和自动配置
Copyright © wueasy.com 2017-2019 all right reserved,powered by Gitbook未经允许,禁止以任何形式传播 修订时间: 2019-10-04

results matching ""

    No results matching ""