`

JEECMS3.2-final 学习笔记

阅读更多
JEECMS3.2-final 学习笔记
一、启动:
二、缓存:
缓存是通过Encache来实现的,Encache主页http://ehcache.org/,指引文档:http://ehcache.org/EhcacheUserGuide.html
1.定义encache配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<ehcache xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:noNamespaceSchemaLocation="ehcache.xsd">
    <defaultCache
            maxElementsInMemory="10000"
            eternal="false"
            timeToIdleSeconds="120"
            timeToLiveSeconds="120"
            overflowToDisk="true"
            diskSpoolBufferSizeMB="30"
            maxElementsOnDisk="10000000"
            diskPersistent="false"
            diskExpiryThreadIntervalSeconds="120"
            memoryStoreEvictionPolicy="LRU"
            />
	<cache name="com.jeecms.core.page.Homepage"
		maxElementsInMemory="3" 
                  eternal="false" 
                  timeToIdleSeconds="7200" 
                  timeToLiveSeconds="8640"
		overflowToDisk="true" 
                  diskSpoolBufferSizeMB="30" 
                  maxElementsOnDisk="30" 
                  diskPersistent="true"
	/>
	<cache name="com.jeecms.core.page.Channel"
		maxElementsInMemory="20" 
                  eternal="false" 
                  timeToIdleSeconds="7200" 
                  timeToLiveSeconds="8640"
		overflowToDisk="true" 
                  diskSpoolBufferSizeMB="30" 
                  maxElementsOnDisk="200" 
                  diskPersistent="true"
	/>
            
	<cache name="com.jeecms.core.entity.Website.DOMAIN2ID" 
		maxElementsInMemory="3000"
		eternal="true"
		overflowToDisk="true" 
		/>
	<cache name="com.jeecms.core.entity.Website.Alias2DOMAIN" 
		maxElementsInMemory="10000"
		eternal="true"
		overflowToDisk="true" 
		/>
	<cache name="com.jeecms.core.entity.User.LOGINNAME2ID" 
		maxElementsInMemory="3000"
		eternal="false"
		timeToIdleSeconds="3600"
		timeToLiveSeconds="7200"
		overflowToDisk="false"
		/>
	<cache name="com.jeecms.core.CommonId" 
		maxElementsInMemory="10000"
		eternal="false"
		timeToIdleSeconds="3600"
		timeToLiveSeconds="7200"
		overflowToDisk="false"
		/>
</ehcache>


2.与spring整合:
<?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:jee="http://www.springframework.org/schema/jee" xmlns:tx="http://www.springframework.org/schema/tx"
	xmlns:context="http://www.springframework.org/schema/context"
	xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.5.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.5.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-2.5.xsd"
	>
	<!--缓存-->
	<bean id="cacheManager"         class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean">    
		<property name="configLocation">
			<value>classpath:ehcache-application.xml</value>
		</property>
		<!--
			<property name="shared">
			  <value>true</value>
			</property>
			-->
	</bean>
	<!--首页缓存-->
	<bean id="homepageCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.page.Homepage</value>
		</property>
		<qualifier value="homepage"/>
	</bean>
	<!--栏目页缓存-->
	<bean id="channelCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.page.Channel</value>
		</property>
		<qualifier value="channel"/>
	</bean>
	<!--域名缓存-->
	<bean id="websiteDomainCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.entity.Website.DOMAIN2ID</value>
		</property>
		<!-- 指定注入bean的名称 -->
		<qualifier value="websiteDomain"/>
	</bean>
	<!--域名别名缓存-->
	<bean id="websiteAliasCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.entity.Website.Alias2DOMAIN</value>
		</property>
		<qualifier value="websiteAlias"/>
	</bean>
	<!--统一用户登录名缓存-->
	<bean id="userLoginNameCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.entity.User.LOGINNAME2ID</value>
		</property>
		<qualifier value="userLoginName"/>
	</bean>
	<!--通用ID缓存-->
	<bean id="commonIdCache" class="org.springframework.cache.ehcache.EhCacheFactoryBean">
		<property name="cacheManager">
			<ref local="cacheManager"/>
		</property>
		<property name="cacheName">
			<value>com.jeecms.core.CommonId</value>
		</property>
		<qualifier value="commonId"/>
	</bean>
 
</beans>



3.注入到service
@Service
public class HomepageCacheSvcImpl implements HomepageCacheSvc {
	public void put(Serializable key, byte[] bytes) {
		homepageCache.put(new Element(key, bytes));
	}

	public byte[] get(Serializable key) {
		Element e = homepageCache.get(key);
		if (e != null) {
			return (byte[]) e.getValue();
		} else {
			return null;
		}
	}

	public boolean remove(Long webId) {
		return homepageCache.remove(webId);
	}

	@Autowired
	public void setHomepageCache(@Qualifier("homepage") Cache homepageCache) {
		this.homepageCache = homepageCache;
	}

	private Cache homepageCache;
}
分享到:
评论

相关推荐

    [CMS程序]JEECMS 2.3.2 Final 系统程序_jeecms-2.3.2-final.zip

    【CMS程序】JEECMS 2.3.2 Final 是一款基于Java技术和JSP的开源内容管理系统,适用于构建企业网站、新闻门户等电子商务平台。这个系统版本为2.3.2,标记为Final,意味着它是该版本的最终稳定版,为用户提供了可靠且...

    jeecms9.2-adminVue

    对于想要学习和使用Jeecms 9.2-adminVue的开发者,可以通过官方文档、社区论坛以及在线教程获取帮助。同时,可以参考《基于Java的门户网站管理系统——JEECMS源码版的搭建步骤》等文章,了解详细的搭建流程和技巧。...

    jeecms-2.3.2-final-db oracl建库脚本

    《Jeecms 2.3.2-Final 在 Oracle 数据库中的建库脚本转换详解》 Jeecms,一个成熟的Java内容管理系统,通常与MySQL数据库配合使用。然而,在某些特定场景下,用户可能需要将数据库环境从MySQL切换到Oracle。本文将...

    jeecms-db-3.0.4-final.sql

    jeecms-db-3.0.4-final.sql

    jeecms3.1.1.final源程序直接导入myeclipse版本

    Jeecms是一款基于Java技术的企业级内容管理系统,其3.1.1.final版本提供了丰富的功能和高度可定制性,适合企业进行网站建设和管理。MyEclipse作为一款强大的Java集成开发环境,是许多开发者进行Java项目开发的首选...

    jeecms-2.4.2-final-src

    通过分析Jeecms-2.4.2-final-src源码,开发者可以深入理解Java EE开发的最佳实践,学习如何整合Spring、Hibernate等框架,以及如何设计和实现一个高效的内容管理系统。这对于提升Java Web开发技能,特别是对企业级...

    JEECMS v2.3.2 Final版是JEECMS面世以来发布的第一个正式版是JEECMS面世以来发布的第一个正式

    五、面向未来的过渡,JEECMS v2.3.2 Final版是JEECMS面世以来发布的第一个正式版本,具有更大的灵活性和稳定性;-一、系统内核完全开源,为用户提供透明的管理平台,为java初学者提供良好的学习平台; 二、核心模板...

    jeecms-3.1.1-final

    3. **配置数据库**:根据你的数据库类型,配置jeecms-system.properties文件中的数据库连接信息。 4. **运行安装脚本**:使用数据库管理工具(如MySQL的phpMyAdmin)运行Jeecms提供的SQL脚本,创建数据库和表结构。 ...

    jeecms-3.1.1 源码版

    JEECMS是JavaEE版网站管理系统 (Java Enterprise Edition Content Manage System)的简称。 · 基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点 · 采用SpringMVC3+Spring3+Hibernate3+...

    [CMS程序]JEECMS 2.3.2 Final 系统程序_jeecms-2.3.2-final.rar

    总结来说,JEECMS 2.3.2 Final 是一个基于Java的成熟CMS解决方案,它的源代码提供了深入学习和自定义开发的机会。无论是对企业级开发者还是个人学习者,都能从中获益匪浅,提升自己的技能并实现高效的内容管理。

    jeecms-2.3.2-final源代码

    JEECMS是JavaEE版网站管理系统(Java Enterprise Edition Content Manage System)的简称。 基于java技术开发,继承其强大、稳定、安全、高效、跨平台等多方面的优点 采用hibernate3+struts2+spring2+freemarker...

    JEECMS v3.0.2 源码包jeecms_v3.0.2_final_src.zip

    3. **jeecms-3.0.2-final-src**: 这是JEECMS v3.0.2的核心源代码包。其中包含了项目的所有Java源代码、配置文件、资源文件等,开发者可以通过查看和理解这些代码来学习JEECMS的工作原理。 **四、主要模块解析** - *...

    jeecms6-src.zip_certainvgr_jeecms_jeecms6 src_jeecms6.1_mainb2s

    《Jeecms6.1全功能源码解析与深度探讨》 Jeecms6.1是一款基于Java技术的开源内容管理系统,由"Certainvgr"提供的"jeecms6-src.zip"压缩包,包含了该系统的完整源代码,是开发者深入理解和定制Jeecms的理想资源。在...

    jeecms5.1-src.zip 源码包

    它的源码包"jeecms5.1-src.zip"包含了整个系统的所有源代码,是学习和二次开发的理想资源。Jeecms的核心设计理念在于易用性和灵活性,它允许开发者快速构建功能丰富的网站,并且支持多种定制化需求。 一、Jeecms的...

    jeecms-3.0.4-fina

    这是jeecms-3.0.4-fina的安装文件,希望对朋友们有所帮助。

    jeecms6-src.z02.gz_jeecms src_jeecms6.1

    jeecms完整全功能版——源代码,压缩包3,去掉后最gz,配合压缩包1解压。

    jeecms-3.1.1网站制作模板

    "jeecms-3.1.1-final-src.zip"和"jeecms-3.1.1-final.zip"可能分别包含了源代码和编译后的二进制文件。源代码对于开发者来说尤其重要,因为它允许深入理解系统的内部工作原理,方便进行定制和二次开发。使用教程通常...

    jeecms-2012.zip

    《Jeecms-2012:深入了解企业级内容管理系统》 Jeecms-2012是一款在2012年推出的基于Java技术的企业级内容管理系统...对于Java开发者来说,学习和掌握Jeecms-2012不仅可以提升项目开发效率,也有助于拓宽技术视野。

    jeecms-2012.rar

    这个压缩包“jeecms-2012.rar”可能包含了该系统的所有源代码、配置文件、数据库脚本、文档以及必要的运行库,使得用户能够下载并部署到自己的服务器上,用于构建网站或内容管理平台。 Java技术是Jeecms的基础,它...

Global site tag (gtag.js) - Google Analytics