spring hibernate springMVC ehcache 配置

 

一  spring springMVC hibernate 配置

jdbc.properties

 

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/数据库名?useUnicode=true&characterEncoding=utf8
user=root 这是我的用户名,密码
pass=root

spring.xml

<!-- 数据库配置文件加载 -->
 <context:property-placeholder location="classpath:xml/jdbc.properties" />
  <!-- 数据库连接池spring jdbc  (和下面的二选一)-->
  <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
  <property name="driverClassName" value="${driver}"></property>
  <property name="url" value="${url}"></property>
  <property name="username" value="${user}"></property>
  <property name="password" value="${pass}"></property>
  </bean>
  <!-- 数据库连接池 druid -->
  <bean id="druidDataSource" class="com.alibaba.druid.pool.DruidDataSource">
  <property name="driverClassName" value="${driver}"></property>
  <property name="url" value="${url}"></property>
  <property name="username" value="${user}"></property>
  <property name="password" value="${pass}"></property>
  </bean>


  <!-- hibernate sessionfactory核心对象 -->
  <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
  <!-- 数据库连接池 -->
  <property name="dataSource" ref="dataSource"></property>
  <property name="hibernateProperties">
  <props>
  <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
  <prop key="hibernate.hbm2ddl.auto">update</prop>
  <prop key="hibernate.show_sql">true</prop>
  <prop key="hibernate.format_sql">true</prop>
  </props>
  </property>
  <!-- 实体扫描 bean-->
  <property name="packagesToScan" value="com.Login.pojo"></property>
  </bean>

  
  <!-- 事务 -->
  <bean

id="hibernateTransactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
  <property name="sessionFactory" ref="sessionFactory"></property>
  </bean>
  
  <!-- 开启事务 -->
  <tx:annotation-driven/>
  <!-- 扫描dao services -->
  <context:component-scan base-package="com.Login.dao;com.Login.services"></context:component-scan>
  

 

 

springMVC

<!-- 扫描web包 -->
  <context:component-scan base-package="com.Login.web"/>
  <!-- mvc组件配置 -->
  <mvc:annotation-driven/>
  <!-- 试图解析 -->
  <bean

id="internalResourceViewResolver"

class="org.springframework.web.servlet.view.InternalResourceViewResolver">
  <property name="prefix" value="/WEB-INF/JSP/"></property>
  <property name="suffix" value=".jsp"></property>
  </bean>
  
  <!-- 资源放行 需要和web.xml中配置一起使用(servlet-mapping)-->
  <mvc:default-servlet-handler/>

下面是和上面的一起使用放在(web.xml)中

<!-- 和springMVC默认处理器servlet一起使用,对静态资源放行 -->
  <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.js</url-pattern>
  <url-pattern>*.css</url-pattern>
  </servlet-mapping>

 

 

 

web.xml

<!-- 加载spring文件 -->
  <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:xml/springContext.xml(xml文件路径)</param-value>
  </context-param>
  <listener>
  <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>
  <!-- springMVC控制器 -->
  <servlet>
  <servlet-name>springDispatcherServlet</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <init-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath:xml/springMVCContext.xml</param-value>
  </init-param>
  <load-on-startup>1</load-on-startup>
  </servlet>
  <servlet-mapping>
  <servlet-name>springDispatcherServlet</servlet-name>
  <url-pattern>/</url-pattern>
  </servlet-mapping>
  <!-- 和springMVC默认处理器servlet一起使用,对静态资源放行 -->
  <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.js</url-pattern>
  <url-pattern>*.css</url-pattern>
  </servlet-mapping>
 
  <!-- 过滤器 -->
 <filter>
  <filter-name>characterEncodingFilter</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
 </filter>

 <!-- 过滤器映射 -->
 <filter-mapping>
  <filter-name>characterEncodingFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

 

spring springMVC hibernate ehcache配置

jdbc.properties

同上

 

spring.xml

<!-- 数据库配置文件加载 -->

 

 

 <context:property-placeholder location="classpath:xml/jdbc.properties" />
  <!-- 数据库连接池 jdbc -->
同上
  <!-- 数据库连接池 druid -->
 同上


  <!-- hibernate sessionfactory核心对象 -->
  <bean id="sessionFactory" class="org.springframework.orm.hibernate5.LocalSessionFactoryBean">
  <!-- 数据库连接池 -->
  <property name="dataSource" ref="dataSource"></property>
  <property name="hibernateProperties">
  <props>
  <prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop>
  <prop key="hibernate.hbm2ddl.auto">update</prop>
  <prop key="hibernate.show_sql">true</prop>
  <prop key="hibernate.format_sql">true</prop>

  <!-- 开启二级缓存 -->

<prop key="hibernate.cache.use_second_level_cache">true</prop>
  <!-- 使用ehcache实现二级缓存 单例 和spring整合实现由同一个cachemanager管理 -->
  <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.SingletonEhCacheRegionFactory</prop>
  <!-- 实现查询缓存,jpa的实现类SimpleJpaRepository  该类中的方法不能通过@QueryHint来实现查询缓存(下面配置对它没用)-->
  <prop key="hibernate.cache.use_query_cache">true</prop>
  </props>
  </property>
  <!-- 实体扫描 -->
  <property name="packagesToScan" value="com.Login.pojo"></property>
  </bean>
  
  <!-- spring整合ehcache -->
  <bean id="ehCacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">
  <!-- 缓存名 -->
  <property name="cacheManagerName" value="scache"></property>
  <!-- ehcache.xml文件路径 有默认的,可以不添加(最好添加) -->
  <property name="configLocation" value="classpath:xml/ehcache.xml"></property>
  <!--实现与与hibernate共用一个缓存管理器  ,默认为“false”,创建一个独立的本地实例 即 将shared更改为false,这样会存在两个缓存管理器  -->
  <property name="shared" value="true"></property>
  </bean>
  
  <!-- ehcache缓存管理器 -->
  <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheCacheManager">
  <property name="cacheManager" ref="ehCacheManager"></property>
  </bean>
  
  <!-- 开启缓存 -->
  <cache:annotation-driven cache-manager="cacheManager"/>
  <!-- 事务 -->
  <bean

id="hibernateTransactionManager" class="org.springframework.orm.hibernate5.HibernateTransactionManager">
  <property name="sessionFactory" ref="sessionFactory"></property>
  </bean>
  
  <!-- 开启事务 -->
  <tx:annotation-driven/>
  
  <context:component-scan
  base-package="com.Login.dao;com.Login.services"></context:component-scan>
 

springMVC web.xml 同上

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值