想问一下实际SSH项目中freemarker的使用

风云2015 2014-02-06 12:53:02
初学了freemarker,不知道实际的SSH项目中,具体是怎么使用的。我想了一个流程,不知道是不是这样的,请大侠指教,谢谢!举例,要生成 show.html,我想的流程如下:


第一步:这个页面事先建好 form.html ,首先会运行这个页面提交username数据
<form action="formaction" method="post">
<input type=text name="username">
<input type="submit" value="submit">
</form>

第二步,建立好模板文件show.ftl
<html><body>${username}</body></html>


第三步:建立formaction对应的处理类FormAction.java,主要源码如下:
public class FormAction{
private String username; // 省略set和get方法
public String execute(){
Map root = new Map();
root.put("username",username);
Writer out = new OutputStreamWriter(new OutputStream(new File("show.html")));

//注:省略获取freemarker环境变量configuration的代码
Template template = configuration.getTemplate("show.ftl")
//就在这一步生成静态文件show.html,合适吗?
template.process(root,out);

return "success";
}
}

第四步,struts.xml中设置好对应关系
<action name="formaction" class="FormAction">
<result>show.html</result>
</action>


这样通过在表单页面form.html中,填写username的数据,然后提交给action处理,在action中生成静态文件,再返回这个生成的静态文件。实际SSH项目中是这样处理的吗?拜谢!!!
...全文
457 10 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
风云2015 2014-03-27
  • 打赏
  • 举报
回复
引用 9 楼 SDN_SUPERUSER 的回复:
[quote=引用 7 楼 u010449283 的回复:] [quote=引用 6 楼 SDN_SUPERUSER 的回复:] [quote=引用 5 楼 u010449283 的回复:] [quote=引用 3 楼 wjkxinxiang 的回复:] return "success"; 有一个配置文件可以配置跳转到那通过个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
在开发中不可见是什么意思[/quote] struts2 直接封装好了。[/quote] struts2可以直接跳转到freemarker模板中,这个我是知道的。但是我不理解有什么用处。难道是在struts2的action 控制类中获取数据,然后再将数据给freemarker模板?可是给模板了数据有什么用啊,模板文件又不能直接在浏览器中读取啊!不还得去通过IO生成静态网页啊[/quote] 你就把freemarker当成jsp吧[/quote]不明白什么意思啊
jackson_fighting 2014-02-14
  • 打赏
  • 举报
回复
引用 7 楼 u010449283 的回复:
[quote=引用 6 楼 SDN_SUPERUSER 的回复:] [quote=引用 5 楼 u010449283 的回复:] [quote=引用 3 楼 wjkxinxiang 的回复:] return "success"; 有一个配置文件可以配置跳转到那通过个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
在开发中不可见是什么意思[/quote] struts2 直接封装好了。[/quote] struts2可以直接跳转到freemarker模板中,这个我是知道的。但是我不理解有什么用处。难道是在struts2的action 控制类中获取数据,然后再将数据给freemarker模板?可是给模板了数据有什么用啊,模板文件又不能直接在浏览器中读取啊!不还得去通过IO生成静态网页啊[/quote] 你就把freemarker当成jsp吧
  • 打赏
  • 举报
回复
jsp如何生成静态页面呢
风云2015 2014-02-14
  • 打赏
  • 举报
回复
引用 6 楼 SDN_SUPERUSER 的回复:
[quote=引用 5 楼 u010449283 的回复:] [quote=引用 3 楼 wjkxinxiang 的回复:] return "success"; 有一个配置文件可以配置跳转到那通过个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
在开发中不可见是什么意思[/quote] struts2 直接封装好了。[/quote] struts2可以直接跳转到freemarker模板中,这个我是知道的。但是我不理解有什么用处。难道是在struts2的action 控制类中获取数据,然后再将数据给freemarker模板?可是给模板了数据有什么用啊,模板文件又不能直接在浏览器中读取啊!不还得去通过IO生成静态网页啊
jackson_fighting 2014-02-12
  • 打赏
  • 举报
回复
引用 5 楼 u010449283 的回复:
[quote=引用 3 楼 wjkxinxiang 的回复:] return "success"; 有一个配置文件可以配置跳转到那个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
在开发中不可见是什么意思[/quote] struts2 直接封装好了。
风云2015 2014-02-11
  • 打赏
  • 举报
回复
引用 3 楼 wjkxinxiang 的回复:
return "success"; 有一个配置文件可以配置跳转到那个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
在开发中不可见是什么意思
无情天下 2014-02-11
  • 打赏
  • 举报
回复
struts中也是在freemarker中的基础上转换的,所谓的struts标签,C标签也是
  • 打赏
  • 举报
回复
return "success"; 有一个配置文件可以配置跳转到那个模版中(据说可以是注解等等。) 你这样写不是觉得很累么?? freemarker 在开发 中 是不可见的。
hay_lee 2014-02-08
  • 打赏
  • 举报
回复
有两种做法,1、你直接跳转freemarker的ftl模板,2、生成静态页面去访问。
jackson_fighting 2014-02-08
  • 打赏
  • 举报
回复
是这样处理的

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧