1、配置好Struts2的环境
2、配置好FreeMarker的环境
(1)拷贝FreeMarker的jar包到lib目录下
(2)在web项目的web.xml文件中配置如下
<servlet>
<servlet-name>freemarker</servlet-name>
<servlet-class>
freemarker.ext.servlet.FreemarkerServlet
</servlet-class>
<init-param>
<param-name>TemplatePath</param-name>
<param-value>/</param-value>
</init-param>
<init-param>
<param-name>NoCache</param-name>
<param-value>true</param-value>
</init-param>
<init-param>
<param-name>ContentType</param-name>
<param-value>text/html</param-value>
</init-param>
<init-param>
<param-name>template_update_delay</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>default_encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>locale</param-name>
<param-value>en_US</param-value>
</init-param>
<init-param>
<param-name>number_format</param-name>
<param-value>0.##########</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>freemarker</servlet-name>
<url-pattern>*.ftl</url-pattern>
</servlet-mapping>
3、Functioninfo.java文件(POJO类)
public class Functioninfo {
private String functionid;
private String functionname;
private String fdescription;
//省略getter和setter方法
}
4、FunctioninfoService.java文件(提供list数据)
public class FunctioninfoService {
public List<Functioninfo> findAll() {
List<Functioninfo> list = new ArrayList<Functioninfo>();
for (int i = 0; i < 9; i++) {
Functioninfo info = new Functioninfo();
info.setFunctionid("a" + i);
info.setFunctionname("b" + i);
info.setFdescription("c" + i);
list.add(info);
}
return list;
}
}
5、FreeTestAction.java文件
public class FreeTestAction {
FunctioninfoService functioninfoService = new FunctioninfoService();
private List<Functioninfo> functionlist;
public String execute() throws Exception {
functionlist = functioninfoService.findAll();
return "success";
}
public List<Functioninfo> getFunctionlist() {
return functionlist;
}
public void setFunctionlist(List<Functioninfo> functionlist) {
this.functionlist = functionlist;
}
}
6、FreeMarker的ftl文件
在WEB-INF目录下新建一个ftl文件:Free.ftl内容如下。
<?xml version="1.0" encoding="utf-8"?>
<Functioninfo>
<#list functionlist as function>
<function>
<functionid>${function.functionid}</functionid>
<functionname>${function.functionname}</functionname>
<fdescription>${function.fdescription}</fdescription>
</function>
</#list>
</Functioninfo>
7、在Struts2的配置文件中配置
<action name="free" class="com.free.action.FreeTestAction">
<result name="success" type="freemarker">
<param name="location">
/WEB-INF/template/Free.ftl
</param>
<param name="contentType">application/xml</param>
</result>
</action>
8、访问路径http://localhost:8000/xml/free ,可以查看到由模板生成的xml文本。
分享到:
相关推荐
在struts2中使用freemarker模版.doc
NULL 博文链接:https://cdxs2.iteye.com/blog/1923067
自己写的一个框架例子,公司也在用,框架是struts2+hibernate+freemarker
1.FreeMarker 2.3.16pdf手册 2.struts2+freemarker web项目例子,可以运行
Struts2框架技术对Freemarker做了很好的支持,开发人员只要熟悉Struts2的标签即可进行开发Freemarker模板文件,如果您还不熟悉具体的Struts2及标签应用请参考其他文献资料,本文主要阐述Struts2与Freemarker的配置...
FreeMarker与Struts2结合的部署
基于Struts2和freemarker整合的小程序,能够自动生成html页面,能够运行
Struts2 和freemarker实例 简单STRUTS2的使用,和freeMarker的使用
struts2+freemarker
struts2sitemesh-freemarker 源码
这是一个struts2 freemarker 国际化的小例子
Struts2与FreeMarker模板
Struts2集成FreeMarker和Velocity,写成了工具类,快速实现页面静态化,以后直接调用即可,无需修改任何源代码,改压缩文件包括 1、工具类; 2、源码(含jar包); 3、mysql数据库可执行文件; 4、struts2集成...
sturts2与freemarker结合使用,以及freemarker语法
简单的新闻发布系统 用到了SSH2框架 页面是用freemarker生成的静态页面 用户名Admin 密码123456
struts2+spring2.5+hibernate3.2 + freemarker 全新功能实现的增删改查+freemarker 摸版 struts2 的方式自己去看简单。 spring2.5 是用注释来注入 hibernate3.2 是用ejb3注解映射关系 hibernate3 +个属性可以自动...
freemarker与struts2详细配置.
采用Struts2注解,视图层采用FreeMarker的一个示例项目。 欢迎下载学习。
这是我自学后写的两个程序,里面包含一个以jsp为模板视图的struts2程序和一个以freemarker为模板视图的struts2程序,希望对你有帮助!
freemarker结合struts2分页,在后台接收当前页和每页显示条数即可,其他可按照需求自行更改