Spring集成MyBatis进行项目开发(一)

阅读更多

 

    下面将介绍使用spring+mybatis的开发样例:

    首先,笔者创建的是一个maven工程,在开发先先导入相关的依赖jar:

    pom.xml:

 


		
			junit
			junit
			4.11
			test
		
		
		
			org.springframework
			spring-core
			3.0.5.RELEASE
		
		
			org.springframework
			spring-context
			3.0.5.RELEASE
		
		
			org.springframework
			spring-beans
			3.0.5.RELEASE
		
		
			org.springframework
			spring-jdbc
			3.0.5.RELEASE
		
		
		
			org.springframework
			spring-web
			3.0.5.RELEASE
		
		
			org.springframework
			spring-webmvc
			3.0.5.RELEASE
		
		
		
			mysql
			mysql-connector-java
			5.1.13
		
		
		
			org.slf4j
			slf4j-api
			1.7.2
		
		
			org.slf4j
			slf4j-log4j12
			1.7.2
		
		
		
			org.mybatis
			mybatis-spring
			1.2.1
		
		
		
			org.mybatis
			mybatis
			3.2.1
		
		
		
			javax.servlet
			javax.servlet-api
			3.1.0
			provided
		
		
			jstl
			jstl
			1.2
		
		
		
			proxool
			proxool
			0.9.1
		
		
			proxool
			proxool-cglib
			0.9.1
		
		
		
			javax.servlet.jsp
			jsp-api
			2.2
			provided
		
	
	

 

   web.xml中对spring和数据库连接池的配置:

 

	
		log4jConfigLocation
		/WEB-INF/log4j.xml
	
	
		log4jRefreshInterval
		60000
	

	
		org.springframework.web.util.Log4jConfigListener
	

	
	
		contextConfigLocation
		/WEB-INF/applicationContext.xml
	

	
	
		org.springframework.web.context.ContextLoaderListener
	
	
	
		spring3
		org.springframework.web.servlet.DispatcherServlet
		2
	

	
	
		spring3
		/
	

	
	
		ServletConfigurator
		org.logicalcobwebs.proxool.configuration.ServletConfigurator
		
			xmlFile
			WEB-INF/proxool.xml
		
		1
	

 

    在这里要注意,因为我使用了数据库连接池proxool,虽然已经设置servlet的启动级别是1,但是由于在servlet启动之前,spring(ContextLoaderListener监听器已启动了,所以在spring监听启动时它会报一个找不到对应的数据源的SQLException对于这个问题,本可以通过更改spring为servlet启动,并将启动级别设置为proxool配置加载之后解决:

 

 
    contextConfigLocation
    
             org.springframework.web.context.ContextLoaderServlet
    
    2
 

 

    但是因为spring3以后就不支持使用servlet启动了官方推荐使用listener启动applicationContext。所以这个方法在新版本不适合了,不过这个异常可以忽略,因为proxool在整个项目加载完成的时候的确以及完成了加载,所以在项目运行起来以后是不会报错的,开始报错是spring做的一个检查。

 

    为了解决乱码问题最好在web.xml中加上这个配置:

 

	
	
		characterEncodingFilter
		org.springframework.web.filter.CharacterEncodingFilter
		
			encoding
			UTF-8
		
	
	
		characterEncodingFilter
		/*
	

 

    下面是对spring3-servlet.xml的配置,它里面申明的bean都存放在webApplicationContext中:




	
	
	
	
	
	
	
		
		
		
	
	
	
		
			
				error
			
		
	

 

    下面对applicationContext.xml进行配置(这里使用了两个数据源):




	
	
		
		 
		
	
	
		
		 
	
	
	
	
		
		
		
		
	
	
		
		
		
		
		
		
		
		
	
	
	
	
	
		
		
	
	
		
		
	 
	
	
	
	
	
	
	
	
	
	

     通过以上的工作环境的配置完成,下一章继续介绍spring-mybatis集成开发的剩余内容。

     下一章  Spring集成MyBatis进行项目开发(二)

你可能感兴趣的:(spring,mybatis,多数据源,数据库连接池)