Chinaunix首页 | 论坛 | 博客
  • 博客访问: 16497501
  • 博文数量: 5645
  • 博客积分: 9880
  • 博客等级: 中将
  • 技术积分: 68081
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-28 13:35
文章分类

全部博文(5645)

文章存档

2008年(5645)

我的朋友

分类:

2008-04-28 21:33:46

下载本文示例代码
相关专区 ·初学者专区 ·高级技术 ·图像与多媒体 ·网络编程 ·Java开源 ·Eclipse ·EJB开发  ·设计模式 精彩专题 ·Java6新功能 ·Borland传奇 ·JBuilder05 ·EJB 3.0 ·Servlet API ·JDBC入门讲座 主题社区 ·Java源码 ·Java  上篇讲到了XSL和XML如何在客户端浏览。也是CMS内容管理系统内容发布的一种形式,即XSL(模版) XML(内容)。   但是现实情况是由客户端浏览器不支持,这样做还会给服务器造成一定的负载,能够减轻服务器服务负载的最好方法就是完全实现静态页面的内容访问机制,当然这样就需要再次将XSL和XML生成HTML或者SHTML。  这就是所说的CMS内容管理系统内容发布的第二种形式HTML或者SHTML。  在Java中有很多方式来实现,首先是先产生XSL文件,即模版文件。  当然我们首先要统一编码,所有的文件编码都为“UTF-8”,符合全球化标准。即产生的文件编码格式为“UTF-8”,数据库编码格式为“UTF-8”,自动生成的XSL文件、XML文件、HTML文件、SHTML文件的格式都必须为“UTF-8”,当然还包括文件内部的声明也都必须为“UTF-8”,当然请不要搞混了文件编码格式和文件内部声明,我觉得初学者最容易搞混。文件编码格式就是文件的属性,文件本身是用什么编码格式生成的,而文件内部声明指的是文件内容中也需要制定编码。  目的当然很简单且明确,防止出现大家头疼的乱码~  下面接着谈谈CMS内容管理系统的两种方案:XSL XML和HTML (一)的例子,说明XSL模版文件的Java实现。  XSL文件:test.xsl <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="" version="1.0"><xsl:output method="html" /><xsl:template match="/article"><table cellspacing="1" cellpadding="1" width="200" border="1"><tbody><tr><td><xsl:value-of select="title" /></td><td><xsl:value-of select="click" /></td></tr><tr><td><xsl:value-of select="date" /></td><td><xsl:value-of select="author" /></td></tr><tr><td><xsl:value-of select="content" disable-output-escaping="yes" /></td><td>测试By GlandJacky</td></tr></tbody></table></xsl:template></xsl:stylesheet>  首先必须先取得要转化为XSL代码的字符串String xslContent  使用dom4j来实现XSL //XSL代码的头String XSL_HEAD = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE root [<!ENTITY nbsp \" \">]><xsl:stylesheet xmlns:xsl=\"\" version=\"1.0\"><xsl:output method=\"html\" /><xsl:template match=\"/root\">";//XSL代码的尾String XSL_END = "</xsl:template></xsl:stylesheet>";//添加模版文件的中HTML代码 if (xslContent.substring(0,6).toUpperCase().equals("<HTML>")){xslContent = XSL_HEAD xslContent XSL_END;}else{xslContent = XSL_HEAD "<HTML><meta content=\"text/html;charset=utf-8\" http-equiv=\"content-type\" />" xslContent "</HTML>" XSL_END;}// 创建document import org.dom4j.DocumentHelper; import org.dom4j.Document;Document document = DocumentHelper.parseText(xslContent);  补充创建完document之后需要三个参数  ·创建好的Document document  ·要创建XSL文件的地址String path  ·创建文件的编码格式String charsetName document.setXMLEncoding(charsetName);FileOutputStream fos = new FileOutputStream(path);OutputStreamWriter osw = new OutputStreamWriter(fos, charsetName);document.write(osw);osw.close();fos.close();  这样XSL文件就创建好了。 软件频道精品推荐 更多精彩点击体验>> 相关专区 ·初学者专区 ·高级技术 ·图像与多媒体 ·网络编程 ·Java开源 ·Eclipse ·EJB开发  ·设计模式 精彩专题 ·Java6新功能 ·Borland传奇 ·JBuilder05 ·EJB 3.0 ·Servlet API ·JDBC入门讲座 主题社区 ·Java源码 ·Java  上篇讲到了XSL和XML如何在客户端浏览。也是CMS内容管理系统内容发布的一种形式,即XSL(模版) XML(内容)。   但是现实情况是由客户端浏览器不支持,这样做还会给服务器造成一定的负载,能够减轻服务器服务负载的最好方法就是完全实现静态页面的内容访问机制,当然这样就需要再次将XSL和XML生成HTML或者SHTML。  这就是所说的CMS内容管理系统内容发布的第二种形式HTML或者SHTML。  在Java中有很多方式来实现,首先是先产生XSL文件,即模版文件。  当然我们首先要统一编码,所有的文件编码都为“UTF-8”,符合全球化标准。即产生的文件编码格式为“UTF-8”,数据库编码格式为“UTF-8”,自动生成的XSL文件、XML文件、HTML文件、SHTML文件的格式都必须为“UTF-8”,当然还包括文件内部的声明也都必须为“UTF-8”,当然请不要搞混了文件编码格式和文件内部声明,我觉得初学者最容易搞混。文件编码格式就是文件的属性,文件本身是用什么编码格式生成的,而文件内部声明指的是文件内容中也需要制定编码。  目的当然很简单且明确,防止出现大家头疼的乱码~  下面接着谈谈CMS内容管理系统的两种方案:XSL XML和HTML (一)的例子,说明XSL模版文件的Java实现。  XSL文件:test.xsl <?xml version="1.0" encoding="UTF-8"?><xsl:stylesheet xmlns:xsl="" version="1.0"><xsl:output method="html" /><xsl:template match="/article"><table cellspacing="1" cellpadding="1" width="200" border="1"><tbody><tr><td><xsl:value-of select="title" /></td><td><xsl:value-of select="click" /></td></tr><tr><td><xsl:value-of select="date" /></td><td><xsl:value-of select="author" /></td></tr><tr><td><xsl:value-of select="content" disable-output-escaping="yes" /></td><td>测试By GlandJacky</td></tr></tbody></table></xsl:template></xsl:stylesheet>  首先必须先取得要转化为XSL代码的字符串String xslContent  使用dom4j来实现XSL //XSL代码的头String XSL_HEAD = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><!DOCTYPE root [<!ENTITY nbsp \" \">]><xsl:stylesheet xmlns:xsl=\"\" version=\"1.0\"><xsl:output method=\"html\" /><xsl:template match=\"/root\">";//XSL代码的尾String XSL_END = "</xsl:template></xsl:stylesheet>";//添加模版文件的中HTML代码 if (xslContent.substring(0,6).toUpperCase().equals("<HTML>")){xslContent = XSL_HEAD xslContent XSL_END;}else{xslContent = XSL_HEAD "<HTML><meta content=\"text/html;charset=utf-8\" http-equiv=\"content-type\" />" xslContent "</HTML>" XSL_END;}// 创建document import org.dom4j.DocumentHelper; import org.dom4j.Document;Document document = DocumentHelper.parseText(xslContent);  补充创建完document之后需要三个参数  ·创建好的Document document  ·要创建XSL文件的地址String path  ·创建文件的编码格式String charsetName document.setXMLEncoding(charsetName);FileOutputStream fos = new FileOutputStream(path);OutputStreamWriter osw = new OutputStreamWriter(fos, charsetName);document.write(osw);osw.close();fos.close();  这样XSL文件就创建好了。 软件频道精品推荐 更多精彩点击体验>> 下载本文示例代码


浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二浅析CMS内容管理系统的两种方案之二
阅读(121) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~