mysql交给spring管理_JFinal事务配置,将事务交给Spring管理

import javax.sql.DataSource;

import org.springframework.boot.context.properties.ConfigurationProperties;

import org.springframework.context.annotation.Bean;

import org.springframework.context.annotation.Configuration;

import org.springframework.context.annotation.Primary;

import org.springframework.jdbc.datasource.DataSourceTransactionManager;

import org.springframework.jdbc.datasource.TransactionAwareDataSourceProxy;

import com.alibaba.druid.pool.DruidDataSource;

import com.boss.sms.entity._MappingKit;

import com.jfinal.plugin.activerecord.ActiveRecordPlugin;

import com.jfinal.plugin.activerecord.dialect.MysqlDialect;

/**

* @Data : 2020年4月27日

* @author : Leaual

* @description : JFinal配置类

*/

@Configuration

public class JFinalConfig  {

// 将全局配置提出来 方便其它地方重用

//    private static Prop prop = PropKit.use("application-dev.properties");

/**

* 初始化连接池

* @return

*/

@Bean

@Primary

@ConfigurationProperties(prefix = "spring.datasource")

public DataSource druidDataSource() {

return new DruidDataSource();

}

/**

* 配置数据源代理

* @return

*/

@Bean

public TransactionAwareDataSourceProxy transactionAwareDataSourceProxy() {

TransactionAwareDataSourceProxy transactionAwareDataSourceProxy = new TransactionAwareDataSourceProxy();

transactionAwareDataSourceProxy.setTargetDataSource(druidDataSource());

return transactionAwareDataSourceProxy;

}

/**

* 配置事务管理

* @return

*/

@Bean

public DataSourceTransactionManager dataSourceTransactionManager() {

DataSourceTransactionManager dataSourceTransactionManager = new DataSourceTransactionManager();

dataSourceTransactionManager.setDataSource(transactionAwareDataSourceProxy());

return dataSourceTransactionManager;

}

/**

* 配置ActiveRecord

* @return

*/

@Bean

public ActiveRecordPlugin getActiveRecordPlugin() {

//        DruidPlugin druidPlugin = new DruidPlugin(prop.get("url"), prop.get("user"), prop.get("password"));

//        druidPlugin.setDriverClass("com.mysql.jdbc.Driver");

//        druidPlugin.start();

ActiveRecordPlugin arp = new ActiveRecordPlugin(transactionAwareDataSourceProxy());

arp.setShowSql(true);

arp.setDialect(new MysqlDialect());

_MappingKit.mapping(arp);

arp.start();

return arp;

}

}

配置文件:

7add0afa04ca1787901b7aa4d23795f7.png

测试过了,按理说是没有问题的,如果有问题大家多多指出!因为之前遇到需要将这个事务交给Spring管理的问题,网上找的解决办法比较少,很多都用用那个切面去做,我认为没必要。这样子简单配置应该就可以了

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值