FreeMaker实现静态化技术(4)【与Struts2整合】

1.将struts2-core-2.06.jar包中的struts-tags.tld文件复制出来,放到WEB-INF目录下

2.在web.xml文件中配置

<servlet>
  <servlet-name>JspSupportServlet</servlet-name>
  <servlet-class>org.apache.struts2.views.JspSupportServlet</servlet-class>
  <load-on-startup>1</load-on-startup>
 </servlet>

3.在freemaker模板中导入

<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"]/>

4.导入以后就可以在freemaker模板中使用Struts标签了

login.ftl文件

<#assign s=JspTaglibs["/WEB-INF/struts-tags.tld"]/>
<html>
 <head>
  
 </head>
 <body>
  <@s.form name="thisForm" action="login.action">
   <@s.textfield name="username" label="用户名"/>
   <@s.textfield name="password" label="用户名"/>
   <@s.submit value="提交"/>
  </@s.form>
 </body>
</html>

5.将FTL文件放在WEB-INF的目录下,因为WEB容器会保证浏览者无法访问该目录下的所有资源

6.配置action

<action name="*">
       
           <result  type="freemarker">/WEB-INF/templates/{1}.ftl</result>
        </action>

因为ftl文件不能直接访问,所以要配置该action转发。

然后部署服务器,输入http://localhost:8080/项目名/login.action

通过截取login的名称,就直接匹配login.ftl模板文件

你可能感兴趣的:(Web,freemarker,servlet,struts,浏览器)