Mybatis与Spring集成

1.添加相关依赖

注:spring 5.0.1.RELEASE有冲突

1.1 添加spring相关依赖(5.0.2.RELEASE)

   spring-core
   spring-beans
   spring-context
   spring-orm
   spring-tx
   spring-aspects
   spring-web

1.2 添加mybatis相关依赖

mybatis核心:mybatis(3.4.5)
Mybatis分页:pagehelper(5.1.2)

1.3 spring整合mybatis(1.3.1)

mybatis-spring

1.4 添加dbcp2连接池

 commons-dbcp2(2.1.1)
 commons-pool2(2.4.3)

1.5 添加日志配置(2.9.1)

 log4j-core
 log4j-api
 log4j-web

1.6 其他

 junit(4.12)
 javax.servlet-api(4.0.0)
 lombok(1.18.2)

注:使用mybatis-generator插件,pom文件添加支持

2.创建spring配置文件applicationContext

2.1 注解式开发

  开启注解
   
   
   
   
   

2.2 引入外部jdbc配置文件

 

2.3 配置dbcp2数据库连接池

 
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        
    

2.4 spring和mybatis整合



    
    
    
    
    
    
    
    
        
            
                
                    
                        helperDialect=mysql
                    
                
            
        
    





    
    
    
    

2.5 注解式事物配置


    



2.6 开启动态代理
aop:aspectj-autoproxy/

3.注解式开发

hibernate时代的开发
bookdao
bookBiz
bookBizImpl
bookAction

spring-book.xml


	
	

4.3 使用idean的junit插件(JUnitGenerator V2.0)生成测试用例

注1:还需要修改相关配置,详情参考资料:“IDEA Junit4配置.mht”
注2:快捷键,Ctrl + Shift + T

4.4 在执行单元测试时,为了避免产生脏数据,可将测试单元设置成事务回滚
@Rollback(value = true|false)//true回滚事务,false提交事务
@Transactional(transactionManager = “transactionManager”)

5.修改分页代码:

使用AOP编程解决分页代码重复的问题
注1:AOP注解式开发详情见资料“Spring如何实现AOP环绕通知.mht”
注2:AOP分页实现“PageBeanAspect.java”

@Around("execution(**..*Service.*pager(..))")   
 public Object invoke(ProceedingJoinPoint args)

语法结构:execution(方法修饰符 方法返回值 方法所属类 匹配方法名 ( 方法中的形参表 ) 方法申明抛出的异常 )
“*” :代表一个任意类型的参数; “…”:代表零个或多个任意类型的参数。

附录一:DBCP 注:dbcp是apache上的一个java 连接池项目
现在分成了3个大版本,不同的版本要求的JDK不同:
DBCP 2 compiles and runs under Java 7 only (JDBC 4.1)
DBCP 1.4 compiles and runs under Java 6 only (JDBC 4)
DBCP 1.3 compiles and runs under Java 1.4-5 only (JDBC 3)

   hibernate与spring的整合过程:
      1、导入hibernate、spring的pom依赖
      2、spring-hibernate.xml 			
             数据库信息文件的注册 			
             数据库连接池C3P0的配置
    	     sessionfactory工厂相关信息的配置(hibernate.cfg.xml)
    				数据源
    				数据方言
    				show_sql,format_sql
    				映射文件配置 			
                   整个工程的事务配置(声明式事务)
    				(1)动态代理
    				(2)配置事务管理器(通知)
    				(3)定一个类似于过滤通知的一个类
    				(4)定义目标对象(pointcut)
    				 	
    mybatis与spring的整合过程:
        1、导入spring、mybatis的pom依赖 		
        2、spring-mybatis.xml 			
                    开启注解式开发 			
                    数据库信息文件的注册 			
                    数据库连接池C3P0的配置
    			sqlsessionfactory工厂相关信息的配置(mybatis.cfg.xml)
    			       数据源
    			       日志
    			       github分页插件
    				 映射文件
    	                 bookMapper.java 接口   
                        bookMapper.xml 映射文件    
                      配置事务(注解式事务)  
                               事务管理管理器    
                               使用事务管理器
        3、动态代理

你可能感兴趣的:(Mybatis与Spring集成)