struts2的学习比较简单,不再自己一句一句写。
一、Struts2 环境搭建。
1、添加相关jar包。
2、在根目录下添加Struts2配置文件struts.xml。
3、在web.xml中配置Struts2。
(struts2版本 2.1.3之前的用 org.apache.struts2.dispatcher.FilterDispatcher ,否则用 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 。因为从Struts2.1.3开始,将废弃ActionContextCleanUp过滤器,而在StrutsPrepareAndExecuteFilter过滤器中包含相应的功能。 )
二、Action实现
1、写Action类。
规则:至少需一个具有String返回值的方法。
2、在struts.xml中配置
<package name="web" namespace="/" extends="struts-default">
<action name="hello" class="net.web.HelloStruts2Action">
<result name="ok">welcome.jsp</result>
</action>
</package>
3、数据封装
可直接在Action中实现
4、可分发
使用 *号 做 方法名称 的占位符,在访问方式处占位。在method属性处使用{1}访问占位符处的值
<action name="userAction_*" class="net.web.e2.UserAction" method="{1}">
<result name="ok">welcome.jsp</result>
</action>
5、从Action获取Servlet基本对象。
ServletActionContext
ActionContext
三、使全部请求经过Struts2处理。
对页面做如下配置
<action name="login">
<result>login.jsp</result>
</action>
四、Struts2标签
只有一套库。<%@ taglib prefix="s" uri="/struts-tags" %>
常见问题:
1、平时我们新建一个JSP页面默认编码是"ISO8859-1"。那我们要怎么样才能使它默认为中文编码方式,而不用每次手动修改pageEncoding="GBK"。这时我们就可以在MyEclipse6.5下选择菜单项:
Windows---->Preferences---->myeclipse Enterprise Workbench---->File and Editors----->JSP--->把这个目录下的Encoding选为你要设置的编码(如UTF-8、Chinese,National Standard等编码方式)
这样设置以后,你下次新建一个JSP页面的时候就默认是你设置的编码了为默认了。
2、struts2版本 2.1.3之前的用 org.apache.struts2.dispatcher.FilterDispatcher ,否则用 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter 。因为从Struts2.1.3开始,将废弃ActionContextCleanUp过滤器,而在StrutsPrepareAndExecuteFilter过滤器中包含相应的功能。