MyBatis SpringMVC整合實(shí)現(xiàn)步驟詳解
1、添加spring相關(guān)jar包
2、配置ehcache jar包。
3、添加ehcache mybatis 適配器jar包(在mybatis官網(wǎng))
4、添加spring mybatis 適配器jar包(在mybatis)官網(wǎng)
5、pom.xml
<project xmlns='http://maven.apache.org/POM/4.0.0' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd'> <modelVersion>4.0.0</modelVersion> <groupId>com.ntjr.mybatisSpring</groupId> <artifactId>mybatisSpring</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <properties> <mybatis_version>3.4.2</mybatis_version> <mysql_connector_version>5.1.38</mysql_connector_version> <org.springframework>4.3.7.RELEASE</org.springframework> </properties> <dependencies> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>${mybatis_version}</version> </dependency> <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>${mysql_connector_version}</version> </dependency> <!-- https://mvnrepository.com/artifact/log4j/log4j --> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.16</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${org.springframework}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-tx --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-tx</artifactId> <version>${org.springframework}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-orm</artifactId> <version>${org.springframework}</version> </dependency> <!-- https://mvnrepository.com/artifact/org.aopalliance/com.springsource.org.aopalliance --> <dependency> <groupId>org.aopalliance</groupId> <artifactId>com.springsource.org.aopalliance</artifactId> <version>1.0.0</version> </dependency> <!-- https://mvnrepository.com/artifact/net.sourceforge.cglib/com.springsource.net.sf.cglib --> <dependency> <groupId>net.sourceforge.cglib</groupId> <artifactId>com.springsource.net.sf.cglib</artifactId> <version>2.2.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.aspectj/com.springsource.org.aspectj.weaver --> <dependency> <groupId>org.aspectj</groupId> <artifactId>com.springsource.org.aspectj.weaver</artifactId> <version>1.6.10.RELEASE</version> </dependency> <!-- https://mvnrepository.com/artifact/com.mchange/c3p0 --> <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version>0.9.5.2</version> </dependency> <dependency> <groupId>org.mybatis.caches</groupId> <artifactId>mybatis-ehcache</artifactId> <version>1.1.0</version> </dependency> <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.1</version> </dependency> <!-- https://mvnrepository.com/artifact/commons-logging/commons-logging --> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-impl --> <dependency> <groupId>org.apache.taglibs</groupId> <artifactId>taglibs-standard-impl</artifactId> <version>1.2.5</version> </dependency> <!-- https://mvnrepository.com/artifact/org.apache.taglibs/taglibs-standard-impl --> <dependency> <groupId>org.apache.taglibs</groupId> <artifactId>taglibs-standard-spec</artifactId> <version>1.2.5</version> </dependency> </dependencies></project>
6、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希望管理所有的業(yè)務(wù)邏輯組件,等。。。 --> <context:component-scan base-package='com.atguigu.mybatis'> <context:exclude-filter type='annotation' expression='org.springframework.stereotype.Controller' /> </context:component-scan> <!-- 引入數(shù)據(jù)庫的配置文件 --> <context:property-placeholder location='classpath:dbconfig.properties' /> <!-- Spring用來控制業(yè)務(wù)邏輯。數(shù)據(jù)源、事務(wù)控制、aop --> <bean 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事務(wù)管理 --> <bean class='org.springframework.jdbc.datasource.DataSourceTransactionManager'> <property name='dataSource' ref='dataSource'></property> </bean> <!-- 開啟基于注解的事務(wù) --> <tx:annotation-driven transaction-manager='dataSourceTransactionManager'/> <!-- 整合mybatis 目的:1、spring管理所有組件。mapper的實(shí)現(xiàn)類。service==>Dao @Autowired:自動注入mapper; 2、spring用來管理事務(wù),spring聲明式事務(wù) --> <!--創(chuàng)建出SqlSessionFactory對象 --> <bean 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> <!--配置一個(gè)可以進(jìn)行批量執(zhí)行的sqlSession --> <bean class='org.mybatis.spring.SqlSessionTemplate'> <constructor-arg name='sqlSessionFactory' ref='sqlSessionFactoryBean'></constructor-arg> <constructor-arg name='executorType' value='BATCH'></constructor-arg> </bean> <!-- 掃描所有的mapper接口的實(shí)現(xiàn),讓這些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>
7、mybatis-config.xml
<?xml version='1.0' encoding='UTF-8' ?><!DOCTYPE configuration PUBLIC '-//mybatis.org//DTD Config 3.0//EN' 'http://mybatis.org/dtd/mybatis-3-config.dtd'><configuration> <settings> <setting name='mapUnderscoreToCamelCase' value='true' /> <setting name='jdbcTypeForNull' value='NULL' /> <!--顯式的指定每個(gè)我們需要更改的配置的值,即使他是默認(rèn)的。防止版本更新帶來的問題 --> <setting name='cacheEnabled' value='true' /> <setting name='lazyLoadingEnabled' value='true' /> <setting name='aggressiveLazyLoading' value='false' /> </settings> <databaseIdProvider type='DB_VENDOR'> <property name='MySQL' value='mysql' /> <property name='Oracle' value='oracle' /> <property name='SQL Server' value='sqlserver' /> </databaseIdProvider></configuration>
注意:此處mybatis配置文件中沒有配置數(shù)據(jù)源,數(shù)據(jù)源由spring負(fù)責(zé)。
此外還需要ehcache.xml配置文件,Mapper.xml文件。
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 詳解CSS偽元素的妙用單標(biāo)簽之美2. 使用Spry輕松將XML數(shù)據(jù)顯示到HTML頁的方法3. HTML5 Canvas繪制圖形從入門到精通4. XHTML 1.0:標(biāo)記新的開端5. php網(wǎng)絡(luò)安全中命令執(zhí)行漏洞的產(chǎn)生及本質(zhì)探究6. 利用CSS3新特性創(chuàng)建透明邊框三角7. asp(vbscript)中自定義函數(shù)的默認(rèn)參數(shù)實(shí)現(xiàn)代碼8. ASP基礎(chǔ)知識VBScript基本元素講解9. JSP的Cookie在登錄中的使用10. XML入門的常見問題(四)
