构造所需要的jar包
eclipse中先生成就一个web项目,在web.xml中配置spring+springmvc位置
< ?xml version= "1.0" encoding= "UTF-8" ?>
< web-app xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance" xmlns= "http://java.sun.com/xml/ns/javaee" xsi:schemaLocation= "http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id= "WebApp_ID" version= "2.5" >
< display-name> MyBatis_06_ssm< /display-name>
< ! --Spring配置: needed for ContextLoaderListener -->
< context-param>
< param-name> contextConfigLocation< /param-name>
< param-value> classpath:applicationContext.xml< /param-value>
< /context-param>
< ! -- Bootstraps the root web application context before servlet initialization -->
< listener>
< listener-class> org.springframework.web.context.ContextLoaderListener< /listener-class>
< /listener>
< ! -- SpringMVC配置 -->
< ! -- The front controller of this Spring Web application, responsible for handling all application requests -->
< servlet>
< servlet-name> spring< /servlet-name>
< servlet-class> org.springframework.web.servlet.DispatcherServlet< /servlet-class>
< load-on-startup> 1< /load-on-startup>
< /servlet>
< ! -- Map all requests to the DispatcherServlet for handling -->
< servlet-mapping>
< servlet-name> spring< /servlet-name>
< url-pattern> /< /url-pattern>
< /servlet-mapping>
< /web-app>
spring的applicationContext.xml中配置
< ?xml version= "1.0" encoding= "UTF-8" ?>
< beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:mybatis-spring= "http://mybatis.org/schema/mybatis-spring"
xmlns:tx= "http://www.springframework.org/schema/tx"
xsi:schemaLocation= "http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd" >
< ! -- Spring希望管理所有的业务逻辑组件,等。。。 -->
< context:component-scan base-package= "com.atguigu.mybatis" >
< context:exclude-filter type= "annotation"
expression= "org.springframework.stereotype.Controller" />
< /context:component-scan>
< ! -- 引入数据库的配置文件 -->
< context:property-placeholder location= "classpath:dbconfig.properties" />
< ! -- Spring用来控制业务逻辑。数据源、事务控制、aop -->
< bean id= "dataSource" class= "com.mchange.v2.c3p0.ComboPooledDataSource" >
< property name= "jdbcUrl" value= "${jdbc.url} " > < /property>
< property name= "driverClass" value= "${jdbc.driver} " > < /property>
< property name= "user" value= "${jdbc.username} " > < /property>
< property name= "password" value= "${jdbc.password} " > < /property>
< /bean>
< ! -- spring事务管理 -->
< bean id= "dataSourceTransactionManager" class= "org.springframework.jdbc.datasource.DataSourceTransactionManager" >
< property name= "dataSource" ref= "dataSource" > < /property>
< /bean>
< ! -- 开启基于注解的事务 -->
< tx:annotation-driven transaction-manager= "dataSourceTransactionManager" />
< ! --
整合mybatis
目的:1、spring管理所有组件。mapper的实现类。
service== > Dao @Autowired:自动注入mapper;
2、spring用来管理事务,spring声明式事务
-->
< ! --创建出SqlSessionFactory对象 -->
< bean id= "sqlSessionFactoryBean" class= "org.mybatis.spring.SqlSessionFactoryBean" >
< property name= "dataSource" ref= "dataSource" > < /property>
< ! -- configLocation指定全局配置文件的位置 -->
< property name= "configLocation" value= "classpath:mybatis-config.xml" > < /property>
< ! --mapperLocations: 指定mapper文件的位置-->
< property name= "mapperLocations" value= "classpath:mybatis/mapper/*.xml" > < /property>
< /bean>
< ! --配置一个可以进行批量执行的sqlSession,做批量操作的时候才需要 -->
< bean id= "sqlSession" class= "org.mybatis.spring.SqlSessionTemplate" >
< constructor-arg name= "sqlSessionFactory" ref= "sqlSessionFactoryBean" > < /constructor-arg>
< constructor-arg name= "executorType" value= "BATCH" > < /constructor-arg>
< /bean>
< ! -- 扫描所有的mapper接口的实现,让这些mapper能够自动注入;
base-package:指定mapper接口的包名
-->
< mybatis-spring:scan base-package= "com.atguigu.mybatis.dao" />
< ! -- < bean class= "org.mybatis.spring.mapper.MapperScannerConfigurer" >
< property name= "basePackage" value= "com.atguigu.mybatis.dao" > < /property>
< /bean> -->
< /beans>
还有springMVC对应的spring-servlet.xml文件
在这里插入代码片< ?xml version= "1.0" encoding= "UTF-8" ?>
< beans xmlns= "http://www.springframework.org/schema/beans"
xmlns:xsi= "http://www.w3.org/2001/XMLSchema-instance"
xmlns:context= "http://www.springframework.org/schema/context"
xmlns:mvc= "http://www.springframework.org/schema/mvc"
xsi:schemaLocation= "http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-4.0.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd" >
< ! --SpringMVC只是控制网站跳转逻辑 -->
< ! -- 只扫描控制器 -->
< context:component-scan base-package= "com.atguigu.mybatis" use-default-filters= "false" >
< context:include-filter type= "annotation" expression= "org.springframework.stereotype.Controller" />
< /context:component-scan>
< ! -- 视图解析器 -->
< bean class= "org.springframework.web.servlet.view.InternalResourceViewResolver" >
< property name= "prefix" value= "/WEB-INF/pages/" > < /property>
< property name= "suffix" value= ".jsp" > < /property>
< /bean>
< mvc:annotation-driven> < /mvc:annotation-driven>
< mvc:default-servlet-handler/>
< /beans>