spring 整合 mybatis
来源:互联网 发布:java 锁修饰静态方法 编辑:程序博客网 时间:2024/04/29 06:56
<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/maven-v4_0_0.xsd"><modelVersion>4.0.0</modelVersion><groupId>sshdemo</groupId><artifactId>mybatis</artifactId><packaging>war</packaging><version>0.0.1-SNAPSHOT</version><name>mybatis Maven Webapp</name><url>http://maven.apache.org</url><properties><spring.version>4.1.4.RELEASE</spring.version><project.build.sourceEncoding>utf-8</project.build.sourceEncoding></properties><dependencies><!-- spring --><dependency><groupId> org.springframework</groupId><artifactId> spring-core</artifactId><version> 4.1.4.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-web</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-beans</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-context</artifactId><version>${spring.version}</version></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.2.5.RELEASE</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-tx</artifactId><version>${spring.version}</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-test</artifactId><version>${spring.version}</version><scope>test</scope></dependency><!-- mybatis --><dependency><groupId> org.mybatis</groupId><artifactId> mybatis</artifactId><version> 3.2.8</version></dependency><dependency><groupId>org.mybatis</groupId><artifactId>mybatis-spring</artifactId><version>1.3.0</version></dependency><!-- mysql连接 --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>5.1.34</version></dependency><!-- log4j --><dependency><groupId>log4j</groupId><artifactId>log4j</artifactId><version>1.2.17</version></dependency><!-- servlet --><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>3.0-alpha-1</version></dependency><!-- c3p0 连接池 --><dependency><groupId>c3p0</groupId><artifactId>c3p0</artifactId><version>0.9.1.2</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>servlet-api</artifactId><version>3.0-alpha-1</version></dependency><dependency><groupId>javax.servlet</groupId><artifactId>jstl</artifactId><version>1.2</version></dependency><dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1.8.9</version></dependency></dependencies><build><finalName>mybatis</finalName></build></project>
config
jdbc.url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8jdbc.username=rootjdbc.password=123jdbc.initialPoolSize=20 jdbc.maxPoolSize=100 jdbc.minPoolSize=10 jdbc.maxIdleTime=600 jdbc.acquireIncrement=5 jdbc.maxStatements=5 jdbc.idleConnectionTestPeriod=60
log4j
### set log levels ###log4j.rootLogger = INFO , C , D , E ### console ###log4j.appender.C = org.apache.log4j.ConsoleAppenderlog4j.appender.C.Target = System.outlog4j.appender.C.layout = org.apache.log4j.PatternLayoutlog4j.appender.C.layout.ConversionPattern = [springmvc_mybatis_demo][%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n### log file ###log4j.appender.D = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.D.File = ../logs/springmvc-mybatis-demo.loglog4j.appender.D.Append = truelog4j.appender.D.Threshold = INFO log4j.appender.D.layout = org.apache.log4j.PatternLayoutlog4j.appender.D.layout.ConversionPattern = [springmvc_mybatis_demo][%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n### exception ###log4j.appender.E = org.apache.log4j.DailyRollingFileAppenderlog4j.appender.E.File = ../logs/springmvc-mybatis-demo_error.log log4j.appender.E.Append = truelog4j.appender.E.Threshold = ERROR log4j.appender.E.layout = org.apache.log4j.PatternLayoutlog4j.appender.E.layout.ConversionPattern = [sspringmvc_mybatis_demo][%p] [%-d{yyyy-MM-dd HH:mm:ss}] %C.%M(%L) | %m%n
spring-mybatis
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"<span style="white-space:pre"></span>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:tx="http://www.springframework.org/schema/tx"<span style="white-space:pre"></span>xmlns:aop="http://www.springframework.org/schema/aop"<span style="white-space:pre"></span>xsi:schemaLocation="<span style="white-space:pre"></span>http://www.springframework.org/schema/beans <span style="white-space:pre"></span>http://www.springframework.org/schema/beans/spring-beans-4.1.xsd <span style="white-space:pre"></span>http://www.springframework.org/schema/tx <span style="white-space:pre"></span>http://www.springframework.org/schema/tx/spring-tx-4.1.xsd<span style="white-space:pre"></span>http://www.springframework.org/schema/aop <span style="white-space:pre"></span>http://www.springframework.org/schema/aop/spring-aop-4.1.xsd"><span style="white-space:pre"></span><!-- 配置数据源 使用的是c3p0数据源 --><span style="white-space:pre"></span><bean name="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"<span style="white-space:pre"></span>destroy-method="close"><span style="white-space:pre"></span><property name="JdbcUrl" value="${jdbc.url}" /><span style="white-space:pre"></span><property name="user" value="${jdbc.username}" /><span style="white-space:pre"></span><property name="Password" value="${jdbc.password}" /><span style="white-space:pre"></span><!-- 指定连接池中保留的最大连接数. Default:15 --><span style="white-space:pre"></span><property name="maxPoolSize" value="${jdbc.maxPoolSize}" /><span style="white-space:pre"></span><!-- 指定连接池中保留的最小连接数 --><span style="white-space:pre"></span><property name="minPoolSize" value="${jdbc.minPoolSize}" /><span style="white-space:pre"></span><!-- 指定连接池的初始化连接数 取值应在minPoolSize 与 maxPoolSize 之间.Default:3 --><span style="white-space:pre"></span><property name="initialPoolSize" value="${jdbc.initialPoolSize}" /><span style="white-space:pre"></span><!-- 最大空闲时间,60秒内未使用则连接被丢弃。若为0则永不丢弃。 Default:0 --><span style="white-space:pre"></span><property name="maxIdleTime" value="${jdbc.maxIdleTime}" /><span style="white-space:pre"></span><!-- 当连接池中的连接耗尽的时候c3p0一次同时获取的连接数. Default:3 --><span style="white-space:pre"></span><property name="acquireIncrement" value="${jdbc.acquireIncrement}" /><span style="white-space:pre"></span><!-- JDBC的标准,用以控制数据源内加载的PreparedStatements数量。 但由于预缓存的statements属于单个connection而不是整个连接池所以设置这个参数需要考虑到多方面的因数.如果maxStatements与maxStatementsPerConnection均为0,则缓存被关闭。Default:0 --><span style="white-space:pre"></span><property name="maxStatements" value="${jdbc.maxStatements}" /><span style="white-space:pre"></span><!-- 每60秒检查所有连接池中的空闲连接.Default:0 --><span style="white-space:pre"></span><property name="idleConnectionTestPeriod" value="${jdbc.idleConnectionTestPeriod}" /><span style="white-space:pre"></span></bean><span style="white-space:pre"></span><!-- myBatis文件 --><span style="white-space:pre"></span><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><span style="white-space:pre"></span><property name="dataSource" ref="dataSource" /><span style="white-space:pre"></span><property name="mapperLocations" value="classpath:/mapping/*.xml" /><span style="white-space:pre"></span></bean><span style="white-space:pre"></span><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><span style="white-space:pre"></span><property name="basePackage" value="com.xyh.dao" /><span style="white-space:pre"></span><property name="sqlSessionFactoryBeanName" value="sqlSessionFactory" /><span style="white-space:pre"></span></bean><span style="white-space:pre"></span><!-- 配置事务管理器 --><span style="white-space:pre"></span><bean id="transactionManager"<span style="white-space:pre"></span>class="org.springframework.jdbc.datasource.DataSourceTransactionManager"><span style="white-space:pre"></span><property name="dataSource" ref="dataSource" /><span style="white-space:pre"></span></bean><span style="white-space:pre"></span><!-- 拦截器方式配置事物 --><span style="white-space:pre"></span><tx:advice id="transactionAdvice" transaction-manager="transactionManager"><span style="white-space:pre"></span><tx:attributes><span style="white-space:pre"></span><tx:method name="insert*" propagation="REQUIRED" /><span style="white-space:pre"></span><tx:method name="update*" propagation="REQUIRED" /><span style="white-space:pre"></span><tx:method name="delete*" propagation="REQUIRED" /><span style="white-space:pre"></span><tx:method name="get*" propagation="SUPPORTS" read-only="true" /><span style="white-space:pre"></span><tx:method name="find*" propagation="SUPPORTS" read-only="true" /><span style="white-space:pre"></span><tx:method name="select*" propagation="SUPPORTS" read-only="true" /><span style="white-space:pre"></span></tx:attributes><span style="white-space:pre"></span></tx:advice><span style="white-space:pre"></span><!-- Spring aop事务管理 --><span style="white-space:pre"></span><aop:config><span style="white-space:pre"></span><aop:pointcut id="transactionPointcut"<span style="white-space:pre"></span>expression="execution(* org.andy.shop.service..*Impl.*(..))" /><span style="white-space:pre"></span><aop:advisor pointcut-ref="transactionPointcut"<span style="white-space:pre"></span>advice-ref="transactionAdvice" /><span style="white-space:pre"></span></aop:config><span style="white-space:pre"></span><!-- mapper bean --><span style="white-space:pre"></span><bean name="Usermapper" id="Usermapper"<span style="white-space:pre"></span>class="org.mybatis.spring.mapper.MapperFactoryBean"><span style="white-space:pre"></span><property name="mapperInterface" value="com.xyh.dao.Usermapper" /><span style="white-space:pre"></span><property name="sqlSessionFactory" ref="sqlSessionFactory" /><span style="white-space:pre"></span></bean><span style="white-space:pre"></span><bean name="userService" class="com.xyh.service.UserServiceImp"><span style="white-space:pre"></span><property name="Usermapper" ref="Usermapper"><span style="white-space:pre"></span></property><span style="white-space:pre"></span></bean></beans>
spring 配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"<span style="white-space:pre"></span>xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"<span style="white-space:pre"></span>xsi:schemaLocation="http://www.springframework.org/schema/beans<span style="white-space:pre"></span>http://www.springframework.org/schema/beans/spring-beans-4.1.xsd<span style="white-space:pre"></span>http://www.springframework.org/schema/context<span style="white-space:pre"></span>http://www.springframework.org/schema/context/spring-context-4.1.xsd"><span style="white-space:pre"></span><context:property-placeholder location="classpath:config.properties" /><span style="white-space:pre"></span><context:component-scan base-package="com.xyh.service" /><span style="white-space:pre"></span><context:component-scan base-package="com.xyh.dao" /> <context:component-scan base-package="classpth:/mapping" /></beans>
@Repositorypublic interface Usermapper {/** * * 功能: 查询用户列表 * * @return */public List<User> find();}
package com.xyh.service;import java.util.List;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.jmx.export.annotation.ManagedResource;import org.springframework.stereotype.Repository;import org.springframework.stereotype.Service;import com.xyh.dao.Usermapper;import com.xyh.domain.User;@Service("UserService")public class UserServiceImp implements UserService { @Autowiredpublic Usermapper usermapper;public List<User> find() {// TODO Auto-generated method stubreturn usermapper.find();}public Usermapper getUsermapper() {return usermapper;}public void setUsermapper(Usermapper usermapper) {this.usermapper = usermapper;}}
junit
package com.xyh.dao;import java.util.List;import org.apache.ibatis.session.SqlSessionFactory;import org.junit.Before;import org.junit.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;import com.xyh.domain.User;import com.xyh.service.UserService;import com.xyh.service.UserServiceImp;public class UsermapperTest {@Autowiredpublic UserService userService;@Beforepublic void init() {@SuppressWarnings("resource")ApplicationContext ac = new ClassPathXmlApplicationContext(new String[] { "classpath:spring.xml","classpath:spring-mybatis.xml" }); userService= (UserService) ac.getBean("userService");}@Testpublic void testfind() {List<User> list= userService.find();System.out.println(list.size());}}
0 0
- Mybatis -- Mybatis整合Spring
- 【Mybatis】Mybatis整合spring
- 【Spring+Mybatis】Spring整合Mybatis
- MyBatis-----2、MyBatis整合Spring
- Spring整合Mybatis
- spring整合myBatis
- MyBatis-Spring框架整合
- MyBatis+Spring整合示例
- MyBatis+Spring整合示例
- MyBatis+Spring整合方案
- spring + struts2 + mybatis整合
- Spring整合Mybatis
- Mybatis整合Spring
- Spring Mybatis 整合
- spring整合MyBatis
- Mybatis整合Spring
- MyBatis+Spring整合示例
- maven+spring+mybatis整合
- 四大组件之Service(三)-Service的跨进程调用
- 【剑指offer】用两个栈实现队列
- vim配置http://www.cnblogs.com/ma6174/archive/2011/12/10/2283393.html
- 推翻自己和过往,重学自定义View
- Arduino 硬件开发 教程收集
- spring 整合 mybatis
- Android实现类似股票列表联动
- Factorial Trailing Zeroes - Javacript
- Linux下python升级步骤
- 沙盒目录
- Andriod中应用开机自启动的问题
- 字符串
- 第十、十一周课后实践(1)
- 贝叶斯分类器-----数据挖掘