Spring和MyBatis整合,druid连接池
来源:互联网 发布:软件定制开发公司 编辑:程序博客网 时间:2024/06/03 15:47
一、导入所需jar包
<!-- test --><dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.11</version> <scope>test</scope></dependency><dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>4.0.5.RELEASE</version></dependency><!-- spring --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>4.0.5.RELEASE</version></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.2.3</version></dependency><!-- jdbc --><dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.0.5.RELEASE</version></dependency><dependency> <groupId>com.h2database</groupId> <artifactId>h2</artifactId> <version>1.3.176</version> <scope>runtime</scope></dependency><!-- 连接池 --><dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.0.15</version></dependency>
<?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:jdbc="http://www.springframework.org/schema/jdbc" xmlns:tx="http://www.springframework.org/schema/tx"xmlns:jpa="http://www.springframework.org/schema/data/jpa" xmlns:aop="http://www.springframework.org/schema/aop"xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsdhttp://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsdhttp://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-4.0.xsdhttp://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsdhttp://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsdhttp://www.springframework.org/schema/data/jpa http://www.springframework.org/schema/data/jpa/spring-jpa-1.3.xsd"default-lazy-init="true"><description>Spring公共配置</description><context:property-placeholder location="classpath:application.properties" /><!-- 使用annotation 自动注册bean --><context:component-scan base-package="com.lxy" /><bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"><!-- 指定数据源 --><property name="dataSource" ref="dataSource" /><!-- 指定Mapper接口存放的位置 --><property name="mapperLocations" value="classpath:mybatis/*Mapper.xml" /><!-- 指定实体类bean所在的包 --><property name="typeAliasesPackage" value="com.lxy.beans" /><!-- 指定配置文件位置 --><property name="configLocation" value="classpath:/mybatis/mybatis-configuration.xml"></property></bean><!-- 扫描basePackage下所有以@MyBatisRepository标识的 dao接口 --><bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"><property name="basePackage" value="com.lxy.dao" /><property name="annotationClass" value="com.lxy.util.MyBatisRepository" /></bean><!-- 数据源,用druid连接池 --><bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"init-method="init" destroy-method="close"><!-- 基本属性 url、user、password --><property name="driverClassName" value="${jdbc.driver}" /><property name="url" value="${jdbc.url}" /><property name="username" value="${jdbc.username}" /><property name="password" value="${jdbc.password}" /><!-- 配置初始化大小、最小、最大 --><property name="initialSize" value="1" /><property name="maxActive" value="${jdbc.pool.maxActive}" /><property name="minIdle" value="0" /><!-- 配置获取连接等待超时的时间 --><property name="maxWait" value="60000" /><!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 --><property name="timeBetweenEvictionRunsMillis" value="60000" /><!-- 配置一个连接在池中最小生存的时间,单位是毫秒 --><property name="minEvictableIdleTimeMillis" value="300000" /><property name="validationQuery" value="values 1" /><property name="testWhileIdle" value="true" /><property name="testOnBorrow" value="false" /><property name="testOnReturn" value="false" /><!-- 打开PSCache,并且指定每个连接上PSCache的大小 --><property name="poolPreparedStatements" value="true" /><property name="maxPoolPreparedStatementPerConnectionSize"value="20" /><!-- 配置监控统计拦截的filters --><property name="filters" value="stat" /></bean></beans>
#h2 database settingsjdbc.driver=org.h2.Driverjdbc.url=jdbc:h2:file:~/.h2/asdev;AUTO_SERVER=TRUE;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSEjdbc.username=sajdbc.password=database.jpa.databasePlatform=org.hibernate.dialect.H2Dialect#connection pool settingsjdbc.pool.maxIdle=10jdbc.pool.maxActive=50
四、MyBatis的配置文件mybatis-configuration.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" /></settings></configuration>
五、创建标识类,用于表示MyBatis的dao:MyBatisRepository.class
@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.TYPE)@Documented@Componentpublic @interface MyBatisRepository {String value() default "";}
六、创建Mapper文件,文件命名规则: *Mapper.xml。如:StudentMapper.xml
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace必须指向Dao接口 --><mapper namespace="com.lxy.dao.StudentMybatis"> <!-- id必须指向dao中的方法,parameterType为入参的类型,resultType为返回值的类型</span> -->
<!--入参的map<String,Object>中,String为属性名,Object是值 --><select id="findStudentByStudentId" parameterType="map" resultType="Student">select *from D001_Student swhere s.student_id =#{id}</select></mapper>
<pre name="code" class="java">@MyBatisRepository //标识这是一个Mybatis的daopublic interface StudentMybatis {
List<Student> findStudentByStudentId (Map<String, Object> map);
}
现在,就可以在Service里调用Dao中的findStudentByStudentId(Map<String, Object> map)方法来访问数据库了。
目录结构:
0 0
- Spring和MyBatis整合,druid连接池
- Spring Boot整合MyBatis和Druid
- Spring boot 整合 mybatis + druid
- Spring+Mybatis+Druid 整合Demo
- SpringMVC+Spring+Mybatis整合,使用druid连接池,声明式事务,maven配置
- 框架篇-Spring+Mybatis整合Druid连接池,并配置SQL监控
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)jdbc连接池、druid简介
- SpringBoot学习:整合MyBatis,使用Druid连接池
- Spring+SpringMVC+MyBatis+easyUI整合优化篇(九)数据层优化-jdbc连接池简述、druid简介
- Spring-mvc整合mybatis-oracle11g-druid数据源
- spring boot 1.4 整合 mybatis druid
- Spring-mvc整合mybatis-oracle11g-druid数据源
- spring boot 整合 druid + Mysql + Mybatis
- Spring+SpringMVC+MyBatis整合Druid之入门
- Spring Boot整合Druid连接池开启数据库监控功能
- spring,springmvc,mybatis,AJAX集成+alibaba的连接池druid
- Spring boot 整合mybtais和druid
- spring+springmvc+druid+oscache+mybatis整合web.xml 配置内容
- android Intent常用介绍
- Unable to execute dex: Multiple dex files define Lcom/android/volley/VolleyError;
- Kafka High Availability (下)
- 修改和重置WAMP的phpMyAdmin密码
- 在OJ上Judge Status评判出错常见系列
- Spring和MyBatis整合,druid连接池
- matlab函数 size()函数和waterfal()l函数,三维图形,矩阵
- 欢迎使用CSDN-markdown编辑器
- Qt之打包发布(NSIS详解)
- 从一个进程监控脚本学几个Linux命令
- 3016
- 剑指offer之面试题20顺时针打印矩阵
- poj2080 Calendar
- 旋转角色