- 浏览: 174872 次
- 性别:
- 来自: 杭州
文章分类
最新评论
-
yinvent:
谢谢,终于找到一个可以用的例子!
struts2学习之一简单范例 -
锅巴49:
学习了,不错.
使用 Spring 2.5 注释驱动的 IoC 功能 -
fooky:
你好,今天在配置spring secutiry3,想让系统先从 ...
spring security 配置文件小结(逐步深化到url级别) -
lj508:
你好啊 请教你个问题
我用那个纯jsp上传时
怎么运行时根本没 ...
Sturt2学习之十二---文件上传 -
641216927:
我还是一个struts2新手。
有个问题请教一下:
同时在t ...
struts2学习之一简单范例
一、spring二级缓存主要分为三步,可以参考附件程序理解:
1、在spring的bean.xml中添加以下三行代码hibernate.cache.use_second_level_cache=true
hibernate.cache.use_query_cache=false
hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider
<?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:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd"> <context:annotation-config/> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="org.gjt.mm.mysql.Driver"/> <property name="url" value="jdbc:mysql://localhost:3306/itcast?useUnicode=true&characterEncoding=UTF-8"/> <property name="username" value="root"/> <property name="password" value="symbio"/> <!-- 连接池启动时的初始值 --> <property name="initialSize" value="1"/> <!-- 连接池的最大值 --> <property name="maxActive" value="500"/> <!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --> <property name="maxIdle" value="2"/> <!-- 最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --> <property name="minIdle" value="1"/> </bean> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="dataSource" ref="dataSource"/> <property name="mappingResources"> <list> <value>cn/itcast/bean/Person.hbm.xml</value> </list> </property> <property name="hibernateProperties"> <value> hibernate.dialect=org.hibernate.dialect.MySQL5Dialect hibernate.hbm2ddl.auto=update hibernate.show_sql=false hibernate.format_sql=false hibernate.cache.use_second_level_cache=true hibernate.cache.use_query_cache=false hibernate.cache.provider_class=org.hibernate.cache.EhCacheProvider </value> </property> </bean> <bean id="txManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <tx:annotation-driven transaction-manager="txManager"/> <bean id="personService" class="cn.itcast.service.impl.PersonServiceBean"/> <bean name="/person/list" class="cn.itcast.web.action.PersonAction"/> <bean name="/person/manage" class="cn.itcast.web.action.PersonManageAction"/> </beans>
2、新建二级缓存配置文件ehcache.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- defaultCache节点为缺省的缓存策略 maxElementsInMemory 内存中最大允许存在的对象数量 eternal 设置缓存中的对象是否永远不过期 overflowToDisk 把溢出的对象存放到硬盘上 timeToIdleSeconds 指定缓存对象空闲多长时间就过期,过期的对象会被清除掉 timeToLiveSeconds 指定缓存对象总的存活时间 diskPersistent 当jvm结束是是否持久化对象 diskExpiryThreadIntervalSeconds 指定专门用于清除过期对象的监听线程的轮询时间 --> <ehcache> <diskStore path="D:\cache"/> <defaultCache maxElementsInMemory="1000" eternal="false" overflowToDisk="true" timeToIdleSeconds="120" timeToLiveSeconds="180" diskPersistent="false" diskExpiryThreadIntervalSeconds="60"/> <cache name="cn.itcast.bean.Person" maxElementsInMemory="100" eternal="false" overflowToDisk="true" timeToIdleSeconds="300" timeToLiveSeconds="600" diskPersistent="false"/> </ehcache>
3、在需要缓存的相应的实体对象映射文件上加上:<cache usage="read-write" region="cn.itcast.bean.Person"/>
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="cn.itcast.bean"> <class name="Person" table="person"> <cache usage="read-write" region="cn.itcast.bean.Person"/> <id name="id"> <generator class="native"/> </id> <property name="name" length="10" not-null="true"/> </class> </hibernate-mapping>
备注:附件中为准确的项目,但是因上传文件大小受限制,所以去掉了lib下的所有jar包。
- SSH.rar (19.5 KB)
- 下载次数: 49
发表评论
-
使用 Spring 2.5 注释驱动的 IoC 功能
2010-08-04 11:04 1239级别: 初级 转自http://www.ibm.com/dev ... -
使用 Spring 2.5 基于注解驱动的 Spring MVC
2010-08-04 11:00 1126转自http://www.ibm.com/developerw ... -
spring security 学习 续一
2009-08-21 15:08 5098六、为了使用MD5对密码加密,我们需要修改一下配置文件。 ... -
spring security 配置文件小结(逐步深化到url级别)
2009-08-20 17:39 9177一 、方式一:用户名密码都在配置文件中。 <?x ... -
spring2.5+strut2.0+hibernate3.3集成
2009-08-15 16:15 1261一、准备jar包,见附件。 二、分布集成 1、先集成spr ... -
ssh或S2sh中因延迟加载出现问题解决方案
2009-08-15 15:29 1057解决方案:在web.xml中加入以下代码 使用spr ... -
S2SH或ssh中乱码问题解决方法一
2009-08-15 15:23 1111在web.xml中添加以下配置 <filter> ... -
Spring+JDBC集成学习笔记(可参考ppt附件38-46页)
2009-08-15 14:25 1912使用Spring+JDBC集成步骤如下 ... -
Spring和Struts和Hibernate集成
2009-03-31 11:53 7911、见附件 由于附件最大不超过10M 所以部分lib单独打包了 ... -
spring与struts集成方案二
2009-03-31 11:31 1084spring+struts的集成(第二种集成方案)一、原理 将 ... -
Spring与Struts集成_第一种方案摘录
2009-03-30 13:38 1048一、原理: 在Action中取得BeanFactory对象,然 ... -
Spring学习笔记之九--声明式事务
2009-03-30 10:02 1018一、事务的传播特性: 前六个是标准的,在.net中也有,后面 ... -
spring学习之八--Hibernate编程式事务
2009-03-30 00:06 1583采用编程式事务 程序示例: 1、以前单个事物的控制 1)Hib ... -
spring学习之七“AOP使用spring静态配置文件(CGLIB)”
2009-03-29 16:21 2880一、spring对AOP的支持(在JDK动态代理和CGLIB之 ... -
spring学习之六“AOP使用spring静态配置文件的实现”
2009-03-29 15:58 1138一、spring(采用配置文件的方式)对AOP实现 1、sp ... -
spring学习之五“AOP概念及使用Annotation的实现”
2009-03-27 15:14 1049一、静态代理 参见代码 二、动态代理 参 ... -
spring学习之四“自动装配”
2009-03-27 14:46 909一。根据名字自动装配: 前提一、设置default-auto ... -
Spring学习笔记之三“scope” --bean范围
2009-03-27 14:37 1524三、spring Bean的作用域: scope可以取值: ... -
Spring学习笔记之二“属性注入”
2009-03-27 14:15 975参见附件代码理解下文(附件中有更加详细的注解)一、普通的属性注 ... -
Spring学习笔记之一“why spring”
2009-03-27 09:54 911一、spring概述 2、在使用spring前 ...
相关推荐
Java Web 现代化开发:Spring Boot + Mybatis + Redis 二级缓存 本篇博客将介绍如何使用 Spring Boot 快速搭建一个 Web 应用,并且采用 Mybatis 作为我们的 ORM 框架。为了提升性能,我们将 Redis 作为 Mybatis 的...
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
第一部分 Spring的核心 第1章 开始Spring之旅 1.1 Spring是什么 1.2 开始Spring之旅 1.3 理解依赖注入 1.3.1 依赖注入 1.3.2 DI应用 1.3.3 企业级应用中的依赖注入 1.4 应用AOP ...B.4 小结
- `@Cache(usage=CacheConcurrencyStrategy.READ_WRITE)`:启用二级缓存,并设置缓存策略为读写模式。 - `@SequenceGenerator`:定义序列生成器,用于自动生成主键值。 此外,还需要引入相关的包,例如`javax....
目录 第一部分spring的核心 第1章开始spring之旅 1.1spring是什么 1.2开始spring之旅 1.3理解依赖注入 ...1.3.3企业级应用中的依赖注入 ...1.5小结 ...2.6小结 ...3.3注入非springbean ...3.5使用spring的特殊bean ...b.4小结
17.4.5 使用Hibernate二级缓存 17.5 对持久层进行测试 17.5.1 配置Unitils测试环境 17.5.2 准备测试数据库及测试数据 17.5.3 编写DAO测试基类 17.5.4 编写BoardDao测试用例 17.6 服务层开发 17.6.1 UserService的...
OpenSessionInView是一种技术,用于解决Hibernate在多线程环境下的一级缓存问题。通过在web.xml中配置`OpenSessionInViewFilter`,可以实现持久化层的事务与视图渲染的无缝结合,提高应用性能。 ##### 2. **Struts...
17.4.5 使用Hibernate二级缓存 17.5 对持久层进行测试 17.5.1 配置Unitils测试环境 17.5.2 准备测试数据库及测试数据 17.5.3 编写DAO测试基类 17.5.4 编写BoardDao测试用例 17.6 服务层开发 17.6.1 UserService的...
当应用系统需要查询缓存的时候,先从一级缓存里查找,如果有,则返回,如果没有查找到,则再查询二级缓存。 小结 本文主要介绍了SpringBoot Redis分布式缓存实现过程解析,通过示例代码详细介绍了分布式缓存的实现...
Mybatis缓存分为一级缓存和二级缓存,它们有助于提高查询效率。Mybatis插件是Mybatis的扩展点,允许开发者在执行SQL前后等环节进行拦截和自定义处理。 6. Mybatis高级特性:Mybatis与Spring的集成是目前常见的实践...
二级缓存是可选的,跨越多个`SqlSession`,但需要在Mapper XML中开启并配置。 ### 六、Ibatis与ORM框架对比 相比于Hibernate等全对象关系映射框架,Ibatis更轻量,控制权更大,开发者可以自由地编写SQL,但同时也...
- **7.6 二级缓存局限性**:讨论二级缓存可能存在的问题,如并发更新问题等。 #### 六、Spring 和 MyBatis 整合 - **8.1 整合思路**:利用Spring管理MyBatis的生命周期,简化开发流程。 - **8.2 整合环境**:搭建...
10.2.3应用二级缓存 214 10.2.4应用第三方缓存 216 10.3项目实战——借还图书 217 本章小结 224 课后练习 224 第11章spring框架基础 226 11.1spring框架概述 226 11.1.1认识spring框架 226 11.1.2spring框架...
3. **易于集成**:可以轻松地与其他 Spring 组件集成,如事务管理和缓存策略等。 为了使用 Spring Data JPA,开发者需要遵循一定的命名规则来定义持久层接口中的方法。Spring Data JPA 会根据这些命名规则自动生成...
11.4.2 使用二级缓存 147 11.5 使用GRAG工具生成Domain 151 11.6 本章小结 154 第12章 与Spring整合 155 12.1 依赖注入与Spring容器基础 155 12.1.1 依赖注入 155 12.1.2 Spring容器基础 157 12.2 在Grails中使用...
《开源项目研究与应用小结》这一文档提供了关于高并发敏捷WEB架构、消息队列/总线服务、大规模数据存储及数据缓存等方面的研究与应用总结。下面将根据文档的内容,详细阐述这些关键技术领域中的开源项目及其优缺点。...
#### 六、小结 整合Struts2、Spring2与Hibernate3不仅提高了开发效率,也使得Web应用更加稳定和易于维护。通过以上步骤,可以快速搭建起一个具备基本CRUD功能的图书管理系统。这种集成方式对于初学者来说是非常有...
- **开启二级缓存**:配置文件中的设置。 - **实现序列化**:满足二级缓存的要求。 - **测试**:验证缓存的有效性。 - **禁用二级缓存**:特定情况下的关闭方法。 - **刷新缓存**:清理缓存数据。 - **Mybatis...
它的缓存机制和第二级缓存可以提高性能,而透明的事务管理和持久化状态管理则降低了复杂性。 Spring框架是Java企业级应用的基石,它是一个全面的后端解决方案,包含依赖注入、AOP(面向切面编程)、数据库事务管理...