@Scheduled定时器使用@Thransactional事物问题

最近遇到一个非常棘手的问题

当jpa使用update/delete时如果不添加@Thransactional会报
Executing an update/delete query;
nested exception is javax.persistence.TransactionRequiredException: Executing anupdate/delete query
异常

可是我添加@Thransactional还是会报这个异常
问了好多同行,他们都是告诉我定时器不能使用事物,实际并不是这样的,我查看了很多资料是可以使用的,@Scheduled和@Thransaction不能在同一个类中。
并且实体类要加上@EnableTransactionManagement注解,使我们这个工程支持事物
后来我试了很多

@Thransactional(rolbackFor=ThrowAble.class)
@Thransactional(rolbackFor=Exception.class)
@Thransactional(ReadOnly=false)//jpa默认不开启事物 等等就是想使事物进行回滚 可是造化弄人呀

废话不多说,直接上最关键的!!

// 在连接数据库也就是date jpa 工程的启动类中 配置
@Bean(name="transactionManager")
public PlatformTransactuibManager configurationTm(EntityManagerFactory factory){
	return new JpaTransactionManager(factory);
}

希望这篇文章对您有一定的帮助,也欢迎您积极地一起讨论成长。

你可能感兴趣的:(java)