微信餐饮微网站建设,浙江政务服务网登录入口,合肥专业建站,外贸获客软件排名前十名目录 1、提出问题
2、解决问题
3、相关文件 1、提出问题
SSM#xff08;SpringSpringMVCMyBatis#xff09;的开发#xff0c;MyBatis在没有与Spring和SpringMVC整合的时候#xff0c;是单独使用#xff0c;单独配置。
Spring和SpringMVC的整合是无缝衔接的#xff0…目录 1、提出问题
2、解决问题
3、相关文件 1、提出问题
SSMSpringSpringMVCMyBatis的开发MyBatis在没有与Spring和SpringMVC整合的时候是单独使用单独配置。
Spring和SpringMVC的整合是无缝衔接的因为是同生态非常顺滑甚至“无所察觉”。
MyBatis整合前存在的问题是部分代码过于冗余 两个问题
①每次都要编写session工厂的代码
②事务控制
解决方式
①将Session工厂交给Spring容器管理从容器中获得执行操作的Mapper实例。
②将事务的控制交给Spring容器进行声明式事务控制
2、解决问题
配置applicationContext.xml 这里的Mapper扫描扫的是mapper的接口由Spring自动创建接口的实现类。
编写测试代码 只需要传入接口spring容器会自动注入实现类。
这一步注入就等价于之前的
new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream(mybatis-config.xml)).openSession().getMapper(UserProxyDao.class);
3、相关文件
applicationContext.xml
?xml version1.0 encodingUTF-8?
beans xmlnshttp://www.springframework.org/schema/beansxmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexmlns:contexthttp://www.springframework.org/schema/contextxsi:schemaLocationhttp://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd
context:component-scan base-packagecom.xzl.controller/!--2、加载jdbc.properties--context:property-placeholder locationclasspath:jdbc.properties/!--3、配置数据源对象--bean iddataSource_C3p0 classcom.mchange.v2.c3p0.ComboPooledDataSourceproperty namedriverClass value${jdbc.driver}/property namejdbcUrl value${jdbc.url}/property nameuser value${jdbc.username}/property namepassword value${jdbc.password}//bean!--配置MyBatis的SqlSessionFactory--bean idsqlSessionFactory classorg.mybatis.spring.SqlSessionFactoryBeanproperty namedataSource refdataSource_C3p0/property nameconfigLocation valueclasspath:mybatis-config.xml//bean!--配置Mapper扫描--bean classorg.mybatis.spring.mapper.MapperScannerConfigurerproperty namebasePackage valuecom.xzl.dao//bean
/beans
mybatis-config.xml
!DOCTYPE configurationPUBLIC -//mybatis.org//DTD Config 3.0//ENhttp://mybatis.org/dtd/mybatis-3-config.dtd
configuration!--注册类型自定义转换器--typeHandlerstypeHandler handlercom.xzl.handle.DateTypeHandle//typeHandlers!-- 注意分页助手的插件 配置在通用mapper之前 --pluginsplugin interceptorcom.github.pagehelper.PageHelper!-- 指定方言 --property namedialect valuemysql//plugin/pluginsmappers
!-- mapper resourcecom/xzl/domain/mapper/UserMapper.xml/mapper resourcecom/xzl/domain/mapper/UserDaoMapper.xml/--mapper resourcecom/xzl/dao/UserProxyDaoMapper.xml/
!-- mapper classcom.xzl.dao.UserProxyDao/--
!-- package namecom.xzl.dao/--/mappers
/configuration
pom.xml
?xml version1.0 encodingUTF-8?
project xmlnshttp://maven.apache.org/POM/4.0.0xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:schemaLocationhttp://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsdmodelVersion4.0.0/modelVersiongroupIdorg.example/groupIdartifactIdmybatis/artifactIdversion1.0-SNAPSHOT/versionpackagingwar/packagingpropertiesmaven.compiler.source11/maven.compiler.sourcemaven.compiler.target11/maven.compiler.target/propertiesdependencies!--spring相关--dependencygroupIdorg.springframework/groupIdartifactIdspring-context/artifactIdversion5.0.5.RELEASE/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-jdbc/artifactIdversion5.0.5.RELEASE/version/dependencydependencygroupIdorg.springframework/groupIdartifactIdspring-test/artifactIdversion5.0.5.RELEASE/version/dependency!--mybatis相关--dependencygroupIdorg.mybatis/groupIdartifactIdmybatis/artifactIdversion3.4.5/version/dependencydependencygroupIdorg.mybatis/groupIdartifactIdmybatis-spring/artifactIdversion1.3.1/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion5.1.32/version/dependencydependencygroupIdc3p0/groupIdartifactIdc3p0/artifactIdversion0.9.1.2/version/dependencydependencygroupIdjunit/groupIdartifactIdjunit/artifactIdversion4.12/version/dependencydependencygroupIdcom.github.pagehelper/groupIdartifactIdpagehelper/artifactIdversion3.7.5/version/dependencydependencygroupIdcom.github.jsqlparser/groupIdartifactIdjsqlparser/artifactIdversion0.9.1/version/dependency/dependencies
/project