今天看了一下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包中即可,新增函數類以$開頭。
- 大小: 24.2 KB
分享到:
相关推荐
在本实例中,我们将深入探讨如何将Spring MVC 4与Smarty 4J整合,创建一个功能完善的Web应用程序。 Smarty 4J 是一个快速、灵活且强大的PHP模板引擎的Java版本。它允许开发者将HTML代码与业务逻辑分离,使得开发者...
smarty4j jar包
然而,由于资料相对较少,将Smarty4j与Struts2整合可能会遇到一些挑战,尤其是关于在Action中如何有效地传递数据到模板。 首先,要集成Smarty4j到Struts2项目中,你需要在项目中引入相关的依赖。确保在`pom.xml`或`...
smarty4j将文本解析成语法树,然后根据语法树生成Java Code的字节码,相当于一个基于JVM的smarty语法的编译器。语法树的生成采用左序遍历的方式依次生成,大致的语法结点包含语句与表达式两大基本类型,语句结点能...
smarty4j将文本解析成语法树,然后根据语法树生成Java Code的字节码,相当于一个基于JVM的smarty语法的编译器。语法树的生成采用左序遍历的方式依次生成,大致的语法结点包含语句与表达式两大基本类型,语句结点能...
Smarty4j的源码,网上下载下来的因为jdk版本是jdk1.5,同时也缺失部分jar包,所以下载下来并不能使用,这个是我整理后的切实可用的版本。 jdk版本为jdk1.6,运行环境为MyEclipse8.5
在本文中,我们将深入探讨如何在Zend Framework中实现Zend_View与Smarty模板系统的集成。首先,我们需要理解这两个组件的基本概念。 **Zend Framework** 是一个广泛使用的PHP框架,它提供了构建MVC(模型-视图-控制...
2. **安装与配置** 要开始使用Smarty,首先需要将其下载并添加到PHP项目中。然后,在PHP代码中进行初始化配置,包括设置模板目录、缓存目录等。例如: ```php require_once 'path/to/smarty/Smarty.class.php'; ...
5. **显示模板**:最后,调用Smarty的`display()`或`render()`方法来渲染并输出模板。 关于“集成验证码”,在CodeIgniter中实现验证码通常会使用第三方库,例如Google的reCAPTCHA或PHP的简单验证码库。集成过程...
Smarty是一个广泛使用的PHP模板引擎,它将业务逻辑与呈现逻辑分离,使得开发者可以更专注于页面设计和用户体验,而不用关心后端代码的复杂性。在本文中,我们将深入探讨Smarty模板的工作原理、特点以及如何安装和...
smarty4j是一个smarty for java的模板引擎,该引擎是将... smarty4j将文本解析成语法树,然后根据语法树生成Java Code的字节码,相当于一个基于JVM的smarty语法的编译器。语法树的生成采用左序遍历的方式依次生成,
该项目为基于imi框架的Smarty模板引擎集成设计源码,总计包含33个文件,涵盖18个PHP源文件、2个JSON配置文件、2个HTML模板文件、2个Shell脚本文件,并附带必要的git配置文件及项目文档。项目旨在实现imi框架与Smarty...
本篇文章将对四个流行的Java模板引擎——Velocity、FreeMarker、Smarty4j以及HTTL进行效率分析,旨在探讨它们在处理业务逻辑编译和性能方面的优劣。 1. Velocity: Velocity是Apache软件基金会的一个开源项目,以其...
zendframework 与Smarty的整合 完整代码 zendframework 1.11与Smarty3
Smarty是一个流行的PHP模板引擎,它的设计目标是将HTML代码与PHP代码分离,使得开发者和设计师可以更有效地协作。在这个Smarty_smarty_的压缩包中,很显然包含了一份详尽的Smarty教程,涵盖了从基础到高级的多个方面...
smarty安装及初级使用 在PHP的世界里已经出现了各式各样的模板类,但就功能和速度来说Smarty还是一直处于...(2) 新建一个模板文件:index.tpl,将此文件放在learn/smarty/templates/templates目录下,代码如下: .....
2. 编写类库文件Mysmarty.php:创建一个继承自Smarty的新类,用来封装Smarty的功能,使之能够与CodeIgniter框架无缝集成。在这个自定义的类中,需要配置模板目录、编译目录等参数,并引入CodeIgniter的配置文件及URL...
Smarty Smarty Smarty
通过阅读`smarty中文手册.chm`,你可以了解如何设置Smarty环境,创建和解析模板,以及如何与其他PHP框架或CMS系统集成。对于PHP开发者来说,熟练掌握Smarty不仅能提升开发效率,还能提高代码的专业性和可读性,是...