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 >

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值