`

FreeMarker整合Struts2

阅读更多

1.解压struts2-core-X.X.X.jar文件,把在META-INF文件夹下面的struts-tags.tld文件复制到WEB-INF文件夹下。
     将freemark的jar导入到工程中

2.在web.xml文件中配置freemark同时启动JSPSupportServlet.代码如下:

<servlet>
        
<servlet-name>freemarker</servlet-name>
        
<servlet-class>
            freemarker.ext.servlet.FreemarkerServlet
        
</servlet-class>
        
<!--下面的配置freemarke的ftl文件的位置 -->
        
<init-param>
            
<param-name>TemplatePath</param-name>
            
<param-value>/</param-value>
        
</init-param>
        
<!-- 是否和服务器(tommcat)一起启动。0为不。1为是-->
        
<load-on-startup>1</load-on-startup>
    
</servlet>

    
<servlet-mapping>
        
<servlet-name>freemarker</servlet-name>
        
<url-pattern>*.ftl</url-pattern>
    
</servlet-mapping>


<servlet>
  
<!-- define a JspSupportServlet Object -->
  
<servlet-name>JspSupportServlet</servlet-name>
  
<servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
  
<!-- setting JspSupportServlet auto start -->
  
<load-on-startup>1</load-on-startup>
 
</servlet>

3.在FreeMarker模板中使用assign指令导入标签库。代码如下

<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"] /> 注:这里我把struts-tags.tld放在WEB-INF下面

4.现在我们可以在FreeMarker模板中使用标签了
示例代码如下:

<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"] />
<@s.form action="login">
 
<@s.textfield name="username" label="username"/>
 
<@s.submit value="login" />
/@s.form

<!-- login.ftl代码如下 -->

<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"] />
<html>
<head>
<title>Login Form</title>
</head>
<body>
please input username and password login
<br>
<@s.form action="Login.action">
 
<@s.textfield name="username" label="username"/>
 
<@s.password name="password" label="password" />
 
<@s.submit value="submit" />
</@s.form>
</body>
</html>

 

<!-- welcome.ftl代码如下: -->

<html>
<head>
<title>Success</title>
</haed>
<body>
WelCome,${username},you logined!
<br>
<href="ShowInfo.action">Show Information</a>
</body>
</html>

 

<!-- showinfo.ftl代码如下: -->

<html>
<head>
<title>User Information</title>
<body>
<table border="1" width="360">
<caption>User Information</caption>

<tr>
<td>username:</td>
<td>${username}</td>
</tr>
<tr>
<td>sex:</td>
<td>${sex}</td>
</tr>
<tr>
<td>age:</td>
<td>${age}</td>
</tr>
</table>
</body>
</html>

分享到:
评论

相关推荐

    freeMarker整合struts2实例调用模板生成html页面

    freeMarker整合struts2实例调用模板生成html页面,对于初学者肯定有用的

    freemarker与struts2整合的实例应用

    适合初学freemarker的人参考的一个简单登录代码。主要是实现freemarker与struts2的整合

    freemarker与struts2详细配置

    **FreeMarker与Struts2的整合配置详解** FreeMarker是一个基于Java的模板引擎,它用于生成动态HTML、XML或其他格式的文本输出。Struts2是一个流行的MVC(模型-视图-控制器)框架,用于构建Java Web应用程序。将...

    struts2和freemarker整合

    **Struts2与FreeMarker的整合** Struts2框架允许开发者选择不同的视图技术,FreeMarker就是其中一种。整合过程包括以下几个步骤: 1. **添加依赖**:在项目中添加FreeMarker和Struts2 FreeMarker插件的依赖。 2. **...

    freemarker+struts2+spring完美整合!

    部署到tomcat中, 访问/freemarker/build_index.action 点击首页生成,当显示生成成功过后 然后访问 ...已经完美将struts2+freemarker+spring整合~ 希望对你们有所帮助。 经测试:tomcat5.5 无法正常运行

    Struts2整合Freemarker生成静态页面

    8. **静态页面生成**:整合Struts2和Freemarker的一个常见应用是生成静态页面,提高网站性能。这通常通过在Action中触发静态化逻辑,将Freemarker渲染后的HTML保存到磁盘,然后直接返回这些静态页面。 9. **错误和...

    struts2+hibernate+freemarker项目实例

    Struts2、Hibernate和FreeMarker是Java开发领域中常见的三个开源框架,它们分别在MVC(Model-View-Controller)架构的不同层面发挥着关键作用。这个"struts2+hibernate+freemarker"项目实例是将这三个框架集成到一起...

    FreeMarker与struts2整合生成静态页面

    FreeMarker与Struts2的整合是Java Web开发中常见的技术组合,主要用于动态生成HTML页面,以提高网站性能和用户体验。FreeMarker是一个模板引擎,而Struts2是一个MVC框架,两者结合可以方便地实现前后端分离,使得...

    freemarker_struts2_demo

    以下是整合FreeMarker和Struts2的一些关键步骤: 1. **配置Struts2**:在Struts2的配置文件(struts.xml)中,定义Action类和结果类型。结果类型通常设置为“ftl”,表示使用FreeMarker模板。 2. **创建FreeMarker...

    Struts2+Spring2.5+Hibernate3+Freemarker框架整合

    整合S2SH+Freemarker+oscache,后台用Spring管理各个bean,Hibernate做数据库持久化,viewer用Freemarker。整合中对Struts2,Hibernate,Spring都采用Annotation进行注解类。

    spring+hibernate+struts2+freemarker SSH2 新闻发布系统

    总结起来,"spring+hibernate+struts2+freemarker SSH2 新闻发布系统"是一个基础的Java Web项目,展示了SSH2框架组合在实际开发中的应用。开发者可以通过学习这个小例子,理解如何整合这些技术来构建更复杂的Web应用...

    Struts2+Spring2.5+Hibernate3+Freemarker整合

    整合S2SH+Freemarker,后台用Spring管理各个bean,Hibernate做数据库持久化,viewer用Freemarker。整合中对Struts2,Hibernate,Spring都采用Annotation进行注解类。

    freemarker项目(从入门到与struts2结合)

    2. **整合Struts2**:搭建一个Struts2项目,配置FreeMarker,编写Action,然后在模板中使用从Action传递的数据。 3. **构建复杂页面**:通过模板继承、宏和指令,构建具有导航、头部和内容区的复杂页面。 4. **错误...

    freemarker+struts2+ibatis入门学习摘要

    4. **整合使用**: 在Struts2中,可以配置Action来调用iBatis的SqlSession,执行SQL操作。FreeMarker则作为视图渲染引擎,接收Action返回的数据,根据模板生成HTML页面。这种三层架构模式(控制层、服务层、视图层)...

    freemarker+struts2.0 实例20090309.rar

    开发过程中,可以通过Struts2的开发者插件进行调试,查看Action的执行情况。对于FreeMarker模板,可以开启调试模式,以便在页面上直接看到错误信息。此外,优化模板布局、合理使用FreeMarker的控制结构和内置函数,...

    Struts2 与Freemarker 的配置方法

    Struts2 和 Freemarker 的整合是企业级Java Web开发中常用的技术组合,它们结合使用能够实现灵活、高效的表现层设计。Struts2 是一个强大的MVC框架,而Freemarker则是一个模板引擎,用于生成动态内容。以下是关于...

    freemarker与Struts2.0的dome

    通过这样的整合,开发者能够利用Struts2的控制器层管理和业务逻辑,同时借助Freemarker的强大模板功能来构建美观、动态的用户界面。这种分离关注点的方式使得代码更易于维护,提高了开发效率。在实际项目中,可以...

    struts2-freemarker

    **Struts2与FreeMarker整合**: 1. **视图渲染**:Struts2 Action执行完成后,可以通过配置将结果导向FreeMarker模板。例如,设置`&lt;result type="freemarker"&gt;/WEB-INF/views/result.ftl&lt;/result&gt;`。 2. **数据传递*...

    struts1.x整合freemarker

    将Struts1.x与Freemarker整合,可以实现更灵活的视图层渲染,提高开发效率。下面我们将详细探讨这一整合过程及其相关的知识点。 1. **Struts1.x框架介绍** Struts1.x是Apache软件基金会的开源项目,主要负责处理...

Global site tag (gtag.js) - Google Analytics