作为CMS内容发布来说,将要显示的内容html化无疑是一个很基本的要求,这样可以提高整个系统的效率。
考虑一个内容节点Content,其中节点有个pagecontent的属性,这个属性用来存储用户在后台输入的内容,
内容+模板=显示,这里是:
内容+模板-->显示静态html
内容用FCK来编辑,模板也同样用FCK编辑,这里用freemarker无疑是一个好的选择。这里是个最简单的例子。
首先定义一个最简单的模板content.ftl
<html>
${content}
</html>
然后就是把内容填充进去:
其实就是这么简单!对html的管理就很容易了,基本的FILE操作
Configuration cfg = new Configuration();
//模板存储的目录
cfg.setDirectoryForTemplateLoading(Path.getTemplateDirectory());
//默认
cfg.setObjectWrapper(new DefaultObjectWrapper());
//填充数据
Map root = new HashMap();
root.put("content", c.getPageContent());
Template temp = cfg.getTemplate("content.ftl");
//发布日期
String date=c.getActivedate();
String filename = c.getId()+".html";
//创建目录
Path.createFold(Path.getWebCmsHtmlDirPath(),date);
Writer out = new OutputStreamWriter(new FileOutputStream(Path.getWebCmsHtmlDirPath()+"/"+date+"/"+filename));
temp.process(root, out);
out.flush();
分享到:
相关推荐
总结起来,Java CMS生成静态页面是一种提高网站性能和SEO的有效手段。通过合理的后台发布流程,可以确保内容的实时更新,同时保持静态页面的高效访问。在实际应用中,需要结合具体业务场景和资源状况,选择合适的...
Controller处理业务逻辑后,将数据模型返回给Spring MVC,然后由ViewResolver解析出对应的视图,最后使用视图技术如JSP、Thymeleaf或Freemarker来渲染并返回给客户端。 【MyBatis】是一个持久层框架,它允许开发者...
1. 静态网站生成器:这类工具如Jekyll、Hugo、Gatsby等,允许开发者使用Markdown或HTML编写内容,然后自动生成静态HTML、CSS和JS文件。这些生成器通常支持插件和主题,便于定制网站样式和功能。 2. 前端框架预渲染:...
- **定义**:页面静态化是指将动态生成的网页转化为静态HTML页面的过程,通常用于提高网站访问速度、降低服务器负载。 - **流程图**:页面静态化一般包括以下几个步骤: - 用户请求动态页面。 - 后端生成动态内容...
2. **Servlet与web.xml配置**:在Struts或Servlet中处理请求,判断是否需要生成静态HTML,并进行相应的URL重写操作。 3. **JSP生成静态HTML**:常见方法包括: - 直接在JSP页面中使用`<jsp:include>`或`<c:out>`...
"通用静态页面生成系统(Engineer) v.1"可能是一个用于生成静态HTML页面的工具。这样的系统通常适用于内容管理系统(CMS),它能够预先渲染动态内容为静态HTML,从而提供更快的访问速度。系统的具体实现可能包括以下...
J2CMS是一款基于JAVAEE平台的开源内容管理系统...6.注意改变程序目录名,比如将J2CMS-SSH改为MyWeb后,需要在管理后台重新生成静态表页才能正常显示,生成静态页面的顺序是先生成首页静态文件,再生成栏目和文章的静态页面
总结,上品折扣网站的静态化方案旨在通过生成静态HTML页面,提高页面加载速度,优化用户体验,同时通过CDN缓存、伪静态和SEO优化等手段,提升网站的可用性和搜索引擎可见性。整个方案涉及数据库设计、模板同步、任务...
DWR负责前端与后端的实时通信,Spring提供了应用架构和安全支持,Hibernate处理数据存取,而Freemarker则用于生成静态页面。WebRoot目录则存放了应用的静态资源,构成了用户可见的网页部分。这样的系统设计使得内容...
综上所述,"CMS新闻发布系统(完整版)"是一个全面的Web应用,它结合了Struts2和Freemarker的优势,实现了高效的内容管理和发布,以及动态生成静态页面的功能,旨在为用户提供稳定、安全、高效的新闻发布服务。
J2CMS是一款基于JAVAEE平台的开源内容管理系统....注意改变程序目录名,比如将J2CMS-SSH改为MyWeb后,需要在管理后台重新生成静态表页才能正常显示,生成静态页面的顺序是先生成首页静态文件,再生成栏目和文章的静态页面
它涉及到将动态生成的网页转换为静态HTML文件,这些文件可以直接由Web服务器提供,而无需每次请求时都通过服务器端的脚本语言(如PHP、JSP或ASP.NET)进行处理。页面静态化的主要目标是减少服务器负载,加快页面加载...
FreeMarker是一个用于生成文本输出的Java类库,它是模板引擎的一种,广泛用于Web应用中动态生成HTML、XML或其他格式的文本。FreeMarker与JSP和Velocity相比,具有以下优点: 1. 不允许在模板中编写Java代码,从而...
5. **模板引擎**:CMS系统通常需要动态生成网页,因此会使用到模板引擎,如FreeMarker或Thymeleaf。这些引擎允许开发者将静态HTML与动态数据结合,生成最终的网页内容,提高了开发效率和页面的可定制性。 6. **安全...
8. **模板引擎**:如FreeMarker或Thymeleaf,这些工具用于将静态HTML模板与动态数据结合,生成最终的网页内容。 9. **权限管理**:对于CMS系统,用户权限管理是很重要的一部分,可能涉及到角色、权限分配,以及登录...
例如,`index.html`模板可能包含`页头顶栏.html`的导入,以及其他一些静态资源。 在处理模板时,Jeecms使用了`FrontUtils`和`MessageResolver`等工具类来处理动态内容和国际化消息。`FrontUtils`用于处理模板路径和...
`static`目录通常存储不需服务器端处理的静态资源,如CSS样式表、JavaScript脚本和图片,它们直接由Web服务器提供给客户端。`login.vm`可能是登录页面的视图文件,处理用户的登录请求。`Error.vm`用于显示错误信息,...
7. **模板引擎**:为了方便页面设计,TOT-JSP-CMS可能采用了模板引擎,如FreeMarker或Velocity,这些引擎可以将静态HTML模板与动态数据结合,生成最终的HTML页面。 8. **国际化与本地化**:CMS系统通常需要支持多...
为了实现动态页面生成,可能会使用FreeMarker或Thymeleaf等模板引擎。它们使开发者可以编写HTML模板,并在其中嵌入动态内容。 5. **权限管理**: CMS系统通常需要用户注册、登录功能以及角色和权限管理。这部分...
本源码是JavaEE版网站管理系统。 · 基于java技术开发,...· 完全生成全站静态页面,可自定义路径结构,无需urlrewrite · 轻松建设大规模网站,可通过次级域名建立子站群,各子站后台管理权限分离,全站实现单点登录