spring hibernate整合

 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <beans xmlns="http://www.springframework.org/schema/beans"
 3     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 4     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
 5 
 6     <!-- 数据源配置 -->
 7     <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
 8         init-method="init" destroy-method="close">
 9         <property name="url" value="${database.jdbc_url}" />
10         <property name="username" value="${database.jdbc_username}" />
11         <property name="password" value="${database.jdbc_password}" />
12 
13         <!-- 连接池过滤器(监控统计:stat,日志:log4j,防SQL注入:wall) -->
14         <property name="filters" value="stat" />
15 
16         <!-- 连接池最大使用连接数量 -->
17         <property name="maxActive" value="20" />
18         <!-- 初始化连接大小 -->
19         <property name="initialSize" value="1" />
20         <!-- 获取连接最大等待时间 -->
21         <property name="maxWait" value="60000" />
22         <!-- 连接池最小空闲 -->
23         <property name="minIdle" value="1" />
24 
25         <!-- 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒 -->
26         <property name="timeBetweenEvictionRunsMillis" value="60000" />
27         <!-- 配置一个连接在池中最小生存的时间,单位是毫秒 -->
28         <property name="minEvictableIdleTimeMillis" value="300000" />
29 
30         <!-- 用来检测连接是否有效的sql,要求是一个查询语句 -->
31         <property name="validationQuery" value="SELECT 1" />
32         <!-- 申请连接的时候检测 -->
33         <property name="testWhileIdle" value="true" />
34         <!-- 申请连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
35         <property name="testOnBorrow" value="false" />
36         <!-- 归还连接时执行validationQuery检测连接是否有效,配置为true会降低性能 -->
37         <property name="testOnReturn" value="false" />
38 
39         <!-- 是否缓存preparedStatement,也就是PSCache。PSCache对支持游标的数据库性能提升巨大,比如说oracle。在mysql下建议关闭。 -->
40         <property name="poolPreparedStatements" value="false" />
41         <!-- 要启用PSCache,必须配置大于0,当大于0时,poolPreparedStatements自动触发修改为true。在Druid中,不会存在Oracle下PSCache占用内存过多的问题,可以把这个数值配置大一些,比如说100 -->
42         <property name="maxOpenPreparedStatements" value="20" />
43     </bean>
44     <!-- 将数据源映射到sessionFactory中 -->
45     <bean id="sessionFactory"
46         class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
47         <property name="dataSource" ref="dataSource"></property>
48         <property name="hibernateProperties">
49             <props>
50                 <prop key="hibernate.dialect">org.hibernate.dialect.MySQL57Dialect</prop>
51                 <prop key="hibernate.show_sql">true</prop>
52                 <prop key="hibernate.format_sql">true</prop>
53                 <prop key="hibernate.hbm2ddl.auto">update</prop>
54             </props>
55         </property>
56         <property name="packagesToScan">
57             <list>
58                 <value>com.springmvc.example.entity</value>
59             </list>
60         </property>
61     </bean>
62 
63 </beans>

 

posted @ 2017-05-28 17:58  简书  阅读(307)  评论(0)    收藏  举报