?
基本使用,首先将源码中的项目解压,然后将其web.xml中的内容复制
<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
?之后在src下建立一个struts.xml(名字不能更改必须是这个)
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />
<constant name="struts.devMode" value="false" />
<constant name="struts.i18n.encoding" value="gbk" />
<package name="default" namespace="/" extends="struts-default">
<action name="UserAction" class="com.sun.action.UserAction">
<result name="index">/index.jsp</result>
<result name="main">/main.jsp</result>
<result name="mainxt">/mainxt.jsp</result>
<result name="top">/top.jsp</result>
<result name="topmenu">/topmenu.jsp</result>
<result name="test">/test.jsp</result>
</action>
</package>
</struts>
?随后可以建立自己的Action了
?
注意:
1.Struts取值直接通过创建属性即可取值.
2.验证用户是否输入等可以利用validate+方法名();
?? 例如:execute 验证方法 validateExecute
3.参数的配置
???编码格式
???struts.i18n.encoding=gbk
???自动加载xml文件
?? struts.configuration.xml.reload = true
?? 是否使用简介样式
?? struts.ui.theme=simple
?? 这些参数可以在
?? org.apache.struts2.defaule.properties进行查看
?
在Action中获取内置对象requset session application
//1.Map对象代替request,session,application,与servlet API解耦
ActionContext ctx=ActionContext.getContext();//action上下文
Map req=(Map) ctx.get("request");
req.put("hello", "world");
Map ses=ctx.getSession();
Map app=ctx.getApplication();
//2.ServletAPI
HttpServletRequest request=ServletActionContext.getRequest();
HttpSession session=request.getSession();
ServletContext application=ServletActionContext.getServletContext();
?