用XSLT和XML改进Struts
http://tech.ddvip.com 2006年11月25日 社区交流
本文详细介绍用XSLT和XML改进Struts
HTML:用来生成HTML标志,特别是用来自模型的数据填写HTML表单。
Bean: 操作Bean。
Logic: 根据Bean值实现逻辑结构。
Template:处理页面模板。
通过Struts标志的使用,你可以避免在视图中使用任何的Java代码。
Struts/JSP 缺点
虽然Struts/JSP较之其他模式有许多优势,但它也存在着一些缺点和不足:
程序员可以把应用逻辑放入JSP。遇到问题时,开发人员可以很快地加以修改,经验表明这实际上是陷阱。程序结构很容易变得复杂和难于管理。
JSP不能很好地支持XML,也就不能保证生成的结果文档(XML或HTML文档)将会是100%“格式良好”(Well-Formed)。
开发人员需要学习如何使用Struts的标志库。事实上要理解这些Struts的标志库,特别是Bean和HTML标志库的确要花费比较长的时间。
你不能在视图中用JSP来实现处理管道(processing pipeline)。只能做些简单的include和forward,这样很明显就会限制了视图的灵活性。例如,对布局计和风格的分离就会比较困难。
对JSP页面的任何修改都会导致JSP的重新编译,这样是非常耗费时间的。
上述问题的解决方法必须要具备以下要求:
限制视图对模式和一些定义明确的上下文环境信息的可见程度,比如项目资源的可见程度就应该受到控制。
强制使用格式良好的XML和HTML
能够对在现存的语言或API起到杠杆作用
降低对视图不同部分分离的难度,比如布局和风格的分离。
缩短开发周期
我们相信我们接下来讨论的这个基于未加修改的Struts和XSLT的轻型框架可以满足上述的要求。我们把这个新的架构叫做Model 2x
Model 2x架构概观
Model 2x是 Struts和XSLT结合的产物。Model 2x基在视图部分用XSLT和最后会被串行化成XML文件的Bean替代了原来Struts视图部分的JSP文件,但原封不动地保留Struts的Controller和Model部分。
责编:豆豆技术应用