当前位置: 首页 > 工具软件 > smarty4j > 使用案例 >

Struts2与smarty4j的集成方法

颜骁
2023-12-01
今天看了一下java版的smarty, 因项目中常用struts2,因此些了一个十分簡單的DEMO, 作為備忘寫下來。

一:官方網站:http://code.google.com/p/ordinary/

二:smarty參考資料:http://www.php100.com/manual/smarty/

三:DEMO目錄及源文件见附件:

四:所需jar包:asm-3.3.1.jar和smarty4j-1.0.0-jdk5.jar

五:文件導入位置:

1. /WebContent/page/test.smt

2. Class:struts.xml

<bean class="cia.view.smarty4j.Smarty4jManager" name="smarty4jManager" />

Class: struts/struts_base.xml

<result-types>

<result-type name="smarty" class="cia.view.smarty4j.SmartyResult"/>

</result-types>

3. Class: struts/test/transTest.xml

<action name="smarty" class="cia.test.transtest.action.SmartyAction">

<result name="success" type="smarty">/page/test.smt</result>

</action>

4. /src/cia/test/transtest/action/SmartyAction.java

5. src/cia/view/smarty4j/ctx/SmartyContext.java

6. /cia/view/smarty4j/ScopesHashModel.java

7. /src/cia/view/smarty4j/Smarty4jManager.java

8. /cia/view/smarty4j/SmartyResult.java
六:smarty4j包很小,標籤易於擴展,據網上資料性能非常出色;新增行函数需要继承org.lilystudio.smarty4j.statement.LineFunction;新增区块函数需要继承org.lilystudio.smarty4j.statement. BlockFunction;都是通过设置parameter这个属性来定义默认的参数格式;擴展好的函數代碼放在org.lilystudio.smarty4j.statement.function或org.lilystudio.smarty4j.statement. modifier包中即可,新增函數類以$開頭。
 类似资料: