spring mvc中配置定时任务,事务等

定时任务

在spring-mvc的配置文件中加入

    
	
	

在xml引用上加入

    
 
xmlns:task="http://www.springframework.org/schema/task
 
http://www.springframework.org/schema/task             
       
http://www.springframework.org/schema/task/spring-task-3.0.xsd

然后代码如下

@Component
public class SchedulingConfigN {
private static final Logger LOG = LoggerFactory.getLogger(SchedulingConfigN.class);
	@Scheduled(cron = "0/20 * * * * ?")	/从第0秒开始,每隔20秒执行一次 从前往后分别是 秒 分 时 日 月 年
                                                            	// 如果一个小时执行一次就是 0 0 */1 * * ?
                                                            	// 每天的11点执行一次 0 0 11 * * ?
	public void scheduing() {
		System.out.println("定时任务启动1111");		
	}
}


事务的配置

事务有两种方式,下面介绍编程式事务。(aop与事务的结合,aop需要的pom.xml配置可以去网络获取)
在spring -tx.xml头中加入命名空间 。

xmlns:tx="http://www.springframework.org/schema/tx

http://www.springframework.org/schema/tx 
http://www.springframework.org/schema/tx/spring-tx.xsd

然后继续加入

   
		
			
		
	
    
	
		
	

REQUIRED解释
如果在同一个service类中定义的两个方法, 内层REQUIRES_NEW并不会开启新的事务,save和update中回滚都会导致整个事务的回滚 。
如果在不同的service中定义的两个方法, 内层REQUIRES_NEW会开启新的事务,并且二者独立,事务回滚互不影响 。

rollback-for解释
Spring框架的事务基础架构代码将默认地 只 在抛出运行时和unchecked exceptions时才标识事务回滚。 也就是说,当抛出个 RuntimeException 或其子类例的实例时。(Errors 也一样 - 默认地 - 标识事务回滚。)从事务方法中抛出的Checked exceptions将 不 被标识进行事务回滚。

然后在spring-mvc.xml中添加命名空间,在之后加入Aop配置。

    
    
	
	
		
	


整合Mybatis

首先在spring-db.xml中配置一个SqlSessionFactory。


        
        
        
        
    

首先在spring-dao.xml中引入SqlSessionFactory,并指定dao层的位置。

    
        
        
        
    

代码可以来参考。

你可能感兴趣的:(spring相关)