1、java如何实现cms的模版功能
一般是用正则表达式将模板标签替换成实际的记录,java实现就是读取模板文件,然后正则读取标签,把标签替换成对应的数据集合。
2、国内有哪些较好的Java开源CMS建站系统
下面给你推荐几个Java开源CMS建站系统:
1、DoraCMS是基于Nodejs+express+mongodb编写的一套内容管理系统,结构简单,较目前一些开源的cms,doracms易于拓展,特别适合前端开发工程师做二次开发。
2、PublicCMS是采用2017年最新主流技术开发的免费开源JAVACMS系统。架构科学,轻松支持上千万数据、千万PV;支持全站静态化,SSI,动态页面局部静态化等为您快速建站,建设大规模站点提供强大驱动,也是企业级项目产品原型的良好选择。
3、电子商务平台及CMS建站系统 CmsWing
一款基于ThinkJS(Node.js MVC)和MySQL的功能强大的(PC端,手机端和微信公众平台)电子商务平台及CMS建站系统。
3、求一款基于JAVA的开源中文CMS
选了10个最强大、最易用的CMS,向大家做一个简要介绍。
Alfresco是一个开源的企业网站内容管理系统,它提供了文档管理、多人协作、记录管理、知识管理网页内容和图像管理等功能。它使用Spring、 Hibernate、 Lucene 和JSF等最新java技术构建了模块化的系统架构。
Alfresco官方网站:http://www.alfresco.com/
中文教程:http://blog.csdn.net/alfresco/
DotCMS是一个开源的企业级内容管理系统,它融入了电子商 务、个性化设置、客户关系管理工具等功能,它可以方便的建立基于各种关系的数据结构和数据库,它可以使用模板快速创建页面,并且提供了一个强大的所见即所 得(WYSIWYG)编辑器。用户可以使用加载外部模块的功能快速的建立Ajax应用、搜索、MP3播放器、幻灯片和相册等功能。
DotCMS官方网站http://dotcms.org/
中文安装教程http://www.javaeye.com/wiki/topic/277794
Magnolia是一个老牌的java内容管理系统,目前已经发布了第四版。它的独特之处在于可以定制内容模型,以返回数组形式来搞定各种不确定的 功能。它遵循W3C标准并且在搜索引擎优化上有许多优势。同时它支持java内容仓库( java content repositories , JCR) 的API。
Magnolia官方网站http://www.magnolia-cms.com/home.html
OpenCms
它提供了一套建立和维护网站的方便的工具。在内容建设方面,它拥有一个易于使用的界面和所见即所得编辑器,在网页生成上它使用了一个先进的页面模板。
OpenCMS官方网站http://www.opencms.org/opencms/en/index.html
中文网站http://www.opencms.cn/
Blandware AtLeap是一个多语种的免费Java内容管理系统,它包含了全文搜索引擎,可以算是一个能让你方便的编写应用的网站框架。
Atleap官方网站https://atleap.dev.java.net/
Fedora是“Flexible Extensible Digital Object Repository Architecture”的缩写,并不是Linux发行版Fedora,是一个数字资源管理系统,它可以创建很多类型的数字图书馆、资料库、档案馆系统 等。
Fedora官方网站http://www.fedora-commons.org/
Apache LenyaOpenEdit是一个开源的内容管理系统,它旨在建设基于在线数字资产的多媒体网站。它提供在线编辑,动态布局,拼写检查,用户管理器,文件管理器,版本控制和通知工具。同时包含企业级的插件,如电子商务,内容管理,博客,活动日程表,社交网络工具等。
OpenEdit官方网站http://www.openedit.org/
这是一个开源的 Java/XML 内容管理系统,提供了版本控制、多站点管理、调度、搜索、所见即所得编辑以及工作流程等功能。Apache Lyenya使用基于模块的Cocoom开源程序框架。
Apache Lyenya官方网站http://lenya.apache.org/
4、java虚拟机常见的几种垃圾收集算法
1、垃圾收集器概述
垃圾收集器是垃圾回收算法(标记-清除算法、复制算法、标记-整理算法、火车算法)的具体实现,不同商家、不同版本的JVM所提供的垃圾收集器可能会有很在差别,本文主要介绍HotSpot虚拟机中的垃圾收集器。
1-1、垃圾收集器组合
JDK7/8后,HotSpot虚拟机所有收集器及组合(连线),如下图:
(A)、图中展示了7种不同分代的收集器:
Serial、ParNew、Parallel Scavenge、Serial Old、Parallel Old、CMS、G1;
(B)、而它们所处区域,则表明其是属于新生代收集器还是老年代收集器:
新生代收集器:Serial、ParNew、Parallel Scavenge;
老年代收集器:Serial Old、Parallel Old、CMS;
整堆收集器:G1;
(C)、两个收集器间有连线,表明它们可以搭配使用:
Serial/Serial Old、Serial/CMS、ParNew/Serial Old、ParNew/CMS、Parallel Scavenge/Serial Old、Parallel Scavenge/Parallel Old、G1;
(D)、其中Serial Old作为CMS出现"Concurrent Mode Failure"失败的后备预案(后面介绍);
1-2、并发垃圾收集和并行垃圾收集的区别
(A)、并行(Parallel)
指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态;
如ParNew、Parallel Scavenge、Parallel Old;
(B)、并发(Concurrent)
指用户线程与垃圾收集线程同时执行(但不一定是并行的,可能会交替执行);
用户程序在继续运行,而垃圾收集程序线程运行于另一个CPU上;
如CMS、G1(也有并行);
1-3、Minor GC和Full GC的区别
(A)、Minor GC
又称新生代GC,指发生在新生代的垃圾收集动作;
因为Java对象大多是朝生夕灭,所以Minor GC非常频繁,一般回收速度也比较快;
(B)、Full GC
又称Major GC或老年代GC,指发生在老年代的GC;
出现Full GC经常会伴随至少一次的Minor GC(不是绝对,Parallel Sacvenge收集器就可以选择设置Major GC策略);
Major GC速度一般比Minor GC慢10倍以上;
5、可以用JAVA构造CMS系统么?
当然都可以了,下面这些都是JAVA实现的CMS。
InfoGlue
infoglue是一个高级的、可扩展的、健壮的内容管理系统,完全用Java开发。重要的功能包括完全支持多语言,站点之间良好的重用,以及广泛的集成能力。
更多InfoGlue信息
Magnolia
Magnolia 是一个开源基于Java的Web内容管理 系统(CMS) ,构建在Java内容知识库标准(JSR-170).Magnolia支持包括英语,中文在内的14种语言,它支持本地搜索,基于XML的导入/导出,跨浏览器的文本编辑器,一个简易的War文件可部署到任何J2EE容器中.在最新版本中还添加对数字媒体在线编辑功能。
更多Magnolia信息
OpenCms
OpenCms 是一个J2EE的产品,它是用Java写成的。它和Tomcat捆绑在一起。但是也能够使用ATG Dynamo、WebLogic和WebSphere。OpenCms支持多种RDBMS来保存内容,包括Oracle、SQL Server、Sybase和mySQL。新版本提供了一个新的模板引擎,JSP支持,一种新的连接管理系统,提高了稳定性。
更多OpenCms信息
JBoss Nukes
基于J2EE架构的JBoss的Nukes是一个完整的内容管理系统。它包含高级用户组管理,安全规则等组件。这些组件在运行期才被部署。
更多JBoss Nukes信息
eAdmin/OWX
基于java/jsp的SiteEditor, CMS,列表生成器等开源软件。包括:模块,XML配置,Struts,自己的API,组件,WYSIWYG,多语言,多用户,基于Web的管理器。
更多eAdmin/OWX信息
Apache Lenya
Apache Lenya 是java的开源内容管理系统。它基于一些标准的技术比如XML 与 XSLT。它其中的代码核心来自于另外一个开源项目Cocoon
更多Apache Lenya 信息
Cofax
Cofax是以Java/XML为基础的CMS。源于Kinight Ridder为方便管理旗下新闻网站所开发。
更多Cofax信息
webEditor
webEditor是一个专门论坛网站的管理系统 。使用cocoon作为机制。
更多webEditor信息
MMBase
MMBase 基于 MPL 的开源 CMS, 具有方便信息发布、维护等特点, 包含有新闻发布、论坛、聊天室等模块, 不过个人认为该项目最大优点还是丰富的文档, 这是在开源项目中很难得地方。
更多MMBase信息
Ion
ion是一个简单但功能强大的基于最新技术的内容管理系统。它完全符合J2EE标准,使用XML定义内容结构。利用XSL把内容转换成各种格式比如:HTML, XML, PDF, TXT等,并且使JSTL作为模板系统。
更多Ion信息
Webman
Webman专业内容管理系统。
更多Webman信息
Daisy
Daisy是内容管理应用程序框架.它包含一个基于Apache Cocoon运行的可以浏览,修改的DaisyWiki应用程序.
更多Daisy信息
RedHat CMS
Red Hat有一组开放源代码基于J2EE标准的企业级应用程序产品包括内容管理,portal,web开发等软件。
更多RedHat CMS信息
Jahia
Jahia 组织日前发布了Jahia 内容综合管理系统CMS和其工作所处的portal server,该版本包含了全功能的search engine,一个轻量级的文档管理系统(支持WebDAV )以及一些协作性的应用portalet(讨论组,WebMail,ToDo List,Timesheet...)
更多Jahia信息
Jamecs
Jamecs基于Jad内容管理框架,它使用Java语言与Velocity模板为开发面向内容提供一个全面的,强大的,灵活的框架框。Jamecs提供了一个在线Demo(基于Tomcat5.5.7/Linux )
更多Jamecs信息
Contineo
Contineo是基于Web的文档管理系统.它支持用户把文档处理成各种当前流行的格式,还可以与Office软件相结合来创建,修改文档.使用Contineo不仅可以发布,搜索,管理各种类型的文档,甚至可以与其它用户直接或通过Email相互交流.
更多Contineo信息
Open Harmonise
Open Harmonise是一个包括描述性数据(metadata), taxonomy(分类)和内容的管理系统并基于WebDAV标准之上.与传统的CMSs不同之处在于它是关注metadata管理和metadata管理与内容管理和内容发布(publishing)之间的结合.
更多Open Harmonise信息
Apache Slide
这个Slide项目的主要模块是一个可以做为内容管理框架底层的内容仓库.它可以把内容信息存取到专门的,异质的,分布式的数据库中.Slide还增加了 security, locking, versioning等特性.Slide也提供了一个WebDAV访问模块(由于一个servlet实现),WebDAV是一个IETF标准被许多公司认可如Microsoft, IBM, Novell, Adobe等,所以所有通过Slide管理的数据也可以通过WebDAV来访问也能够进行远程管理,还可以使用标准第三方工具.
更多Apache Slide信息
JetNuke
JetNuke是一个依据于PHPNuke但使用Java开发的网站内容管理系统(CMS)。
JetNuke免费使用且开放源代码(GNU license)。
JetNuke严格分离了逻辑,数据,样式(style)
7种预定义的样式,没有复杂性的配置文件,一个Web Administration。JetNuke可以很好的与JForum相结合。
JetNuke使用FCKEditor(WYSIWYG HTML 编辑器)来编辑HTML内容.
更多JetNuke信息
dotCMS
dotCMS 是一个100%免费基于J2EE/portal的内容管理系统,它有着许多吸引人的特性是其它许多CMS所没有的。在dotCMS中使用到的开源项目与框架有:Apache Tomcat ,Liferay Enterprise Portal ,Apache Struts, Hibernate ORM,Velocity模板语言,Lucene搜索引擎 。dotCMS采用Eclipse IDE开发并使用Velocity + Struts做为前端使得dotCMS变得容易扩展和构建。dotCMS的license:The Dotmarketing Public License。
更多dotCMS信息
Blandware AtLeap
AtLeap是一个多语言版本的免费Java CMS,它带有一个全文本搜索引擎。它具有以下特性:
* 使用简单:你可以浏览你的网站并在要修改的地方双击鼠标即可进行修改。还有一个可以从Microsoft Word导进数据WYSIWYG编辑器。
* 支持多语言内容:使用UTF-8编码能够同时存储不同语言的内容。
* 内含全文本搜索引擎:这个搜索引擎支持的格式有:RTF, PDF, Word, Excel, PowerPoint, HTML, XHTML, XML, TXT.。
更多Blandware AtLeap信息
Alfresco
Alfresco是一个开放源码,开放标准的内容知识库.
兼容JBoss Portal 2.0与JSR-168.
Java Server Faces图形接口框架.
可访问CIFS/SMB等.
更多Alfresco信息
Xinco DMS
Xinco DMS是一个强大基于Web-Service的消息和文档管理系统.
*可用于管理Files/ Text/URLs/Contacts等,
*一个全文本搜索引擎可用于搜索Text, Adobe PDF, MS Word, MS Excel, HTML, ... .
*数据导入工具
*一个版本控制用于管理文档的版本记录.
*c/s模式客户端与服务器通过SOAP Web Services进行通信.
*MySQL做为后台数据库等.
更多Xinco DMS信息
GeiNuke
GeiNuke 一个用Java开发且稳定,简单,可扩展的CMS,支持HSQLDB和MySql数据库.它的配置非常简单,它使用iBatis作为它的持久层并利用 Spring + Caucho Hessian来提高的伸缩性.对于MVC层它使用到Velocity模板引擎.
更多GeiNuke信息
DSpace
DSpace是一个突破性的数字知识库系统.它可以收集,存储,索引,保护和重新分配一个机构的研究数据.
更多DSpace信息
MeshCMS
MeshCMS是一个易于使用的内容管理系统。它利用文件进行数据存储不需要使用数据库。
更多MeshCMS信息
Intelligent
Intelligent适合于那些已经掌握如何使用HTML与CSS的用户但还希望能有一个更易于管理的web页面.
更多Intelligent信息
Jeceira
Jeceira是一个实现了JSR 170规范的内容管理系统.
更多Jeceira信息
XSM
XSM(eXtensible Site Manager)下一代的web网站管理系统。它能够让用户轻松地在线管理它们的网站,并同时在服务器上维护一个静态的网站。
更多XSM信息
ICM
ICM(Instant Content Management )是一个开源的Web内容管理系统. 最终用户可以编辑自己的主页以所见即所得的方式.而web设计者有更高级的管理选项并可使用各种标准模板语言来组合一个站点.
6、如何指定定java cms垃圾回收
如果你的JAVA应用程序有以下几个特点,那么可以使用Concurrent Mark Sweep (CMS) 垃圾收集器。
希望JAVA垃圾回收器回收垃圾的时间尽可能短;
应用运行在多CPU的机器上,有足够的CPU资源;
有比较多生命周期长的对象;
希望应用的响应时间短。
7、jvm cms stop the world进程什么意思
JVM有个叫做“安全点”和“安全区域”的东西,在发生GC时,所有的线程都会执行到“安全点”停下来。
在需要GC的时候,JVM会设置一个标志,当线程执行到安全点的时候会轮询检测这个标志,如果发现需要GC,则线程会自己挂起,直到GC结束才恢复运行。
体系结构:
每个Java程序都离不开Java虚拟机,Java程序的运行依靠具体的Java虚拟机实例。在Java虚拟机规范中,分别用子系统、内存区、数据类型以及指令这几个术语来描述的。这些组成部分一起展示出一个抽象化的虚拟机内部的抽象体系结构。
(7)javacms垃圾回收扩展资料:
内存管理:
对于Java运行时涉及到的存储区域主要包括程序计数器、Java虚拟机栈、本地方法栈、java堆、方法区以及直接内存等等。对于每个部分,都有其使用的条件。程序计数器主要是取下一条指令,在Java里面主要是取下一条指令的字节码文件。
Java虚拟机栈主要是利用栈先进后出的特性存储局部变量表,动态链接等,主要包括堆内存和栈内存,对于程序员内存分析而言是特别重要的。
本地方法栈与上边的栈基本作用差不多,只不过这里是为Java方法而服务。Java堆是内存管理中最大的一块,所有的线程共享这一块内容,同时该部分也是垃圾收集器的主要区域。
8、java 开源cms opencms的使用,如何去掉两个/opemcms路径的方法
第一步:去掉第一个/opencms
把下载来的opencms.jar改成ROOT.jar包,放在tomcat/webapps下,运行安装。。这样第一个/opencms 自然就去掉了,不用什么力气,也不用配置什么别的,如果您不想把opencms放了ROOT目录,也可以像其它人一样,配置虚拟目录来设置,在baidu搜索一下就有很多方法去掉第一下opencms
第二步:去掉第二个/opencms 也是我们要处理的关键部分。
现在的任务是要去掉第二个,opencms文档中,是安装apache,并使用apache的urlrewrite模块来对项目的URL进行重定向, 现在我们要使用 urlrewrite来完成这任务,如果不知道urlrewrite的朋友,可以到h ttp:/ /tuckey.o rg/urlr ewrite/下载。
下载完以后,把urlrewrite.zip里面的/WEB-INF/lib/urlrewrite.jar放到我们项目的/WEB-INF/lib/urlrewrite.jar里。
然后,在/WEB-INF/目录下新建一个urlrewrite.xml文件
注意一定要下载:urlrewrite-3.1.0.jar 版本,因为我之前使用的其它版本,没有成功。后台页面乱码。
第三步:
至此,已完成了第二个opencms的去除,但如果此时运行项目的话,项目中的URL地址还是会有/opencms/,所以我们要把URL中的这个路径去掉。
打开/WEB-INF/config/opencms-importexport.xml
找到代码:<vfs-prefix>${CONTEXT_NAME}${SERVLET_NAME}</vfs-prefix>
将其修改为: <vfs-prefix>${CONTEXT_NAME}</vfs-prefix>
现在,第二个opencms的去除已成功。
9、java cms
CMS是什么?
CMS是Content Management System的缩写,意位“内容管理系统”。内容管理系统是一种位于Web前端(Web服务器)和后端办公系统或流程(内容创作、编辑)之间的软件系统。
内容的创作人员、编辑人员、发布人员使用内容管理系统来提交、修改、审批、发布内容。这里指的“内容”还包括文件、表格、图片、数据库中的数据甚至视频等一切你想要发布到互联网中的信息。
一个内容管理系统通常有几个要素:文档模板、脚本语言或标记语言、与数据库集成。内容的包含物右内嵌入页面的特殊标记控制。这些标记对于一个内容管理系统通常是唯一的。这些系统通常有复杂的操作语言支持,如 Python,Perl或Java等。
内容管理在网站中的作用
CMS对站点管理和编辑人员的作用最大。这其中的好处是能够使用模板和通用的设计元素以确保整个网站的协调。制作者只要在他们的文档中采用少量的模板代码,即可把精力集中在设计的内容上了。要改变网站的外观,管理员只须修改模板而不是一个个单独的页面。
很多人内容管理系统允许对网站的不同层次面人员赋予不同等级的访问权限,这使得他们不必研究操作系统级的权限设置,只改动浏览器借口即可完成。目前,新浪的CMS是C++制作的,重点强调数据结构的丰富,功能非常强大。评论回复系统做的最好的是网易,延伸阅读做得也不错。搜狐的图库系统做得最好。
其他的网站功能如搜索引擎、日历、Web邮件等也会以第三方插件的形式集成进来。
国内CMS三大分类情况
由于针对的目标用户不同,各个内容管理系统的一些特点都会有所不同。对于要想把CMS应用到网站中的站长而言,为了准确的网站定位,了解国内的CMS内容管理系统的分类情况是非常有必要的。
第一类,面向政府、事业单位,有内外网的应用,特点是用户间的需求差距大,内容管理只是一个大的系统中的某一个部分,一个网站中可能有多个CMS系统。一般在实施时要求制定开发,不可能用现成产品来满足需求。这样的解决方案有:方正祥羽、清华万博、WITS、中关村软件等。这一类别的产品价格非常高,通常在几万元,也可能上百万!
第二类,面向政府、媒体、ICP、大型企业,特点是维护内容的人数多,水平有高有低,但是需求比较明确,做各种类型的信息发布平台,要求承受的产品级的解决方案。相应的产品有:TurboCMS、TRS WCM、龙讯。
第三类,面向企业、个人,特点为用户是网站技术爱好者,喜欢钻研。需求上可能比较复杂,比如要跟BBS、用户注册等应用集成在一起,满足个性化的需求,最好有原代码,可以自己根据需要修改等等。