Struts2+Spring+Ibatis集成合并

2014-11-24 01:42:37 · 作者: · 浏览: 0

上一篇博客讲述了Struts2+Spring的集成合并,主要是利用了一个中间jar包,这篇博客在加上Ibatis持久层框架,三个框架进行合并。其中Struts2和Spring部分和前边的一样,主要是讲解Spring和Ibatis之间的合并,这里也涉及到Spring的AOP编程思想,声明式事务的使用。

一,看一下分工吧:

Struts2:负责流程控制,主要针对的是从JSP页面到action类这一块的步骤。

Spring:负责各个类,对象的创建,包括action,service,dao,数据连接对象,Ibatis框架的核心对象sqlMapClient,Spring自身的事务处理扩展对象transactionManager。

Ibatis:负责对JDBC的封装,简化访问数据的程序。

二,环境的搭建:

1,需要考入的jar包:

commons-fileupload-1.2.1.jar(Struts2:文件上传)

commons-io-1.3.2.jar(Struts2:文件上传)

freemarker-2.3.15.jar(Struts2:视图展现技术)

ognl-2.7.3.jar(Struts2:对象图形导航语言,用于做数据操作)

struts2-core-2.1.8.1.jar(Struts2:核心jar包)

xwork-core-2.1.6.jar(Struts2:webwork框架的核心jar包)

commons-logging.jar(Spring:日志输出操作,实现日志输出的转换)

junit-3.8.2.jar(非必须:单元测试jar包)

log4j-1.2.15.jar(非必须:日志输出jar包)

spring.jar(Spring:核心jar包)

struts2-spring-plugin-2.1.8.1.jar(Struts2和Spring的合并jar包)

c3p0-0.9.1.2.jar(做数据源操作的jar包)

ibatis-2.3.4.726.jar(Ibatis:核心jar包)

ojdbc14.jar(oracle数据库的连接jar包)

aspectjrt.jar(Spring:支持AOP功能的jar包)

aspectjweaver.jar(Spring:支持AOP功能的jar包)

cglib-nodep-2.1_3.jar(Spring:实现基于继承的动态代理)

2,拷贝进去的配置文件:

Struts2:struts.xml

Spring:applicationContext.xml

Ibatis:SqlMapConfig.xml 和SqlMap.xml

日志输出的属性文件:log4j.properties

配置数据库连接信息:db.properties

三,各个配置文件的编写:


1,struts.xml中,主要用来配置action类,

  		        
    
    
     /userlist.
     jsp
     
    
     /error.jsp
     
   
		    
  


2,applicationContext.xml:


			
  
			 
			
  
			 
			    
				
    
     
   
				 
				
   
				
    
     
   
				
   
				
    
     
   
			    
   
				
    
     
   
				 
				
   
				
    
     
      
      
       classpath:db.properties
       
      
     
   
				 
				
   
				
    
     
     
     
     
   
			 
				
   
				
    
     
     
      
      
       classpath:SqlMapConfig.xml
       
      
     
   
				 
				
   
				
    
     
   
				 
				
   
				
    
     
           
				 
				
   
				
    
     
      
      
      
      
     
   
			 
			
  


3,SqlMapConfig.xml

			
  
				
   
				
   


  


4,User.xml(SqlMap.xml)

			
  
			        
   
     insert into t_user(usercode,userpswd,username,orgtype,regdate) values(#usercode#,#userpswd#,#username#,#orgtype#,#regdate#) 
   


  

5,属性文件db.properties:


				url=jdbc:oracle:thin:@127.0.0.1:1521:ljh
				driverClass=oracle.jdbc.driver.OracleDriver
				username=scott

password=ti



四,对于jsp和其他三层这里不再给出。但是提醒一点,service中需要将Exception剖出,这样才会被框架捕捉到,事务才能起作用。Dao层可以直接使用sqlMapClient来调用其中的增删改查的方法。

这样我们的三个框架的合并就算完成,在实际中,根据业务进行相关类的添加,相关配置文件的补充即可。总之多运用。