标签:文字 mod xtend iba 这不 ... def turn upload
右键点击项目名称,并单击“导出”> WAR文件创建一个WAR文件。然后这WAR部署在Tomcat的webapps目录下。最后启动Tomcat服务器,并尝试访问URL http://localhost:8080/HelloWorldStruts2/index.jsp。这会给你以下画面:

让我们一起进入一个“SECRET”的话,你应该看到下面的页面:

现在输入任何文字以外的“SECRET”,你应该看到下面的页面:
我们通常会定义一个以上的行动,以处理不同的请求,向用户提供不同的URL,因此,你可以定义不同的类定义如下:
package com.yiibai.struts2;
import com.opensymphony.xwork2.ActionSupport;
class MyAction extends ActionSupport{
public static String GOOD = SUCCESS;
public static String BAD = ERROR;
}
public class HelloWorld extends ActionSupport{
...
public String execute()
{
if ("SECRET".equals(name)) return MyAction.GOOD;
return MyAction.BAD;
}
...
}
public class SomeOtherClass extends ActionSupport{
...
public String execute()
{
return MyAction.GOOD;
}
...
}
您将在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.devMode" value="true" />
<package name="helloworld" extends="struts-default">
<action name="hello"
class="com.yiibai.struts2.HelloWorld"
method="execute">
<result name="success">/HelloWorld.jsp</result>
<result name="error">/AccessDenied.jsp</result>
</action>
<action name="something"
class="com.yiibai.struts2.SomeOtherClass"
method="execute">
<result name="success">/Something.jsp</result>
<result name="error">/AccessDenied.jsp</result>
</action>
</package>
</struts>
在上述假设的例子中,你可以看到操作的结果被复制SUCCESS 和ERROR 。为了解决这个问题,我们建议您创建一个类,它包含的结果的结果。
拦截器是作为Servlet过滤器或JDK的Proxy类的概念上是相同的。拦截器允许横切功能单独实现动作以及框架。想要使用拦截器,可以实现如下:
Providing preprocessing logic before the action is called.
Providing postprocessing logic after the action is called.
Catching exceptions so that alternate processing can be performed.
使用拦截器在Struts2框架提供的功能很多,例如包括异常处理,文件上传,生命周期回调和验证等。事实上,Struts2的基地很多其拦截功能上,这不是不可能有7或8每个动作拦截分配。
标签:文字 mod xtend iba 这不 ... def turn upload
原文地址:https://www.cnblogs.com/borter/p/9502142.html