一、处理表单数据
(1)拷贝。jar包到lib下配置web.xml文件
(2)创建一个Action对象
public class GreetingAction extends ActionSupport{
private String username;
@Override
public String execute() throws Exception{
//判断用户名是否有效
if(username ==null || "".equals(username)){
return ERROR;
}else{
return SUCCESS:
}
}
public String getUsername(){
return username;
}
public void setUsername(String username){
this.username = username;
}
}
(3)配置struts.xml
<struts>
<!--声明包-->
<package name="myPacke" extends="struts-default">
<!--定义action-->
<action name="greeting" class="com.lyq.action.GreetingAction">
<!--定义成功的映射页面-->
<result name="success">success.jsp</result>
<result name="error">error.jsp</result>
</action>
</package>
</struts>
(4)创建index.jsp
<body>
<form action="greeting.action" method="post">
请输入你的姓名:<input type="text" name="username"/>
<input type="submit" value="提交"/>
</form>
</body>
(5)succes.jsp
<body>
<font color="red">
<s:property value="username"/>
</font>
,你好!
<br/>欢迎使用来到本站。
</body>
(6)error.jsp
<body>
<font color="red">
错误:你没有输入姓名!
</font>
</body>
二、使用Map类型的request、session、application
(1)拷贝。jar包到lib下配置web.xml文件
(2)创建Action
public class TestAction extends ActionSupport {
//Map类型的request
private Map<String,Object>request;
//Map类型的session
private Map<String,Object>session;
//Map类型的application
private Map<String,Object>application;
public TestAction(){
//获取ActionContext对象
ActionContext context = ActionContext.getContext();
//获取Map类型的request
request = (Map<String,Object>)context.get("request");
//获取Map类型的session
session = context.getSession();
//获取Map类型的application
application = context.getApplication();
}
public String execute() throws Exception{
//字符串信息
String info = "abc";
//向request添加信息
request.put("info", info);
//向session添加信息
session.put("info", info);
application.put("info", info);
return SUCCESS;
}
}
(3)struts.xml
<struts>
<package name="myPackage" extends="struts-default">
<action name="testAction" class="com.lyq.action.TestAction">
<result>success1.jsp</result>
</action>
</package>
</struts>
(4)success/jsp
<body>
request范围内的info值
<font color="red"><%=request.getAttribute("info") %></font>
<br/>
session范围内的info值
<font color="red"><%=session.getAttribute("info") %></font>
<br/>
application范围内的info值
<font color="red"><%=application.getAttribute("info") %>/font>
<br/>
</body>
(5)index.jsp
<body>
<a href="testAction.action">Map类型的request、session、application</a>
<br/>
</body>