刚实习, 原来都没用过模版.
现在要用Smarty4j, 这玩意的资料好少啊, 基本都是php的资料.(smarty4j是从php移植过来.)
想问下用过FreeMaker的大侠们,
在FreeMaker中, 是怎么把数据传送到页面的.
好像FreeMaker中有这么句template.process(model, writer);
将输入替换到.tfl模版文件中.
这个model中装的数据是怎么放入的, 是什么时候被放入的???
---------------------------------------------------------------------
我现在用Smarty4j, 是想定义一个接口(有必要的话再给一个默认实现), 该接口中有一个方法
public Map<String, Object> getDateMap()
这个方法返回一个map对象,就是用来替换模版文件中的标签的. 同上面的"model"
然后让所有的Action类(用了Struts2)都去实现这个接口.但这样的方法好像很撮.望高人指点下啊.
http://topic.csdn.net/u/20110504/16/3892f8ef-8889-4aac-afa4-885a41c13e86.html
这个帖子送分.

解决方案 »

  1.   

    freemaker,用struts2为例@Results({
    @Result(name = "dics", location = "resource.ftl")
    })
    public class ResourceAction extends CRUDActionSupport<Resource>{

    private String namestr;

    public String getNamestr() {
    return namestr;
    } public void setNamestr(String namestr) {
    this.namestr = namestr;
    }

    public String findalldics()throws Exception{ Map<String ,Map<String ,String>> namemap = 
                             new HashMap<String ,Map<String ,String>>();       
    setNamestr(JSONObject.fromObject(namemap).toString());     
    return "dics";
    }
    }ftl
             ${namestr},