struts2的拦截器继承:AbstractInterceptor,主要实现public String intercept(ActionInvocation arg0)方法,
获取表单的数据,
public String intercept(ActionInvocation arg0)throws Exception
{
// TODO Auto-generated method stub
//获取页面提供的表单数据,用String数组,然后里面的username[0]就是你要的值。
//这是为了防止有多个同名参数,所以用String数组接收
Map<String, Object> map=arg0.getInvocationContext().getParameters();
String[] id=(String[])map.get("id");
String[] username = (String[])map.get("name");
String[] passwd = (String[])map.get("password");
String[] email=(String[])map.get("email");
System.out.println("UserId: "+id[0]+" Username: "+username[0]+" password: "+passwd[0]+" Email: "+email[0]);
//获取session
Map session=arg0.getInvocationContext().getSession();
String nameInSess=(String)session.get(username);
}
继承struts2的ActionSupport类,获取session:
ActionContext actionContext=ActionContext.getContext();
Map session=actionContext.getSession();
JSP:获取类成员数据:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<jsp:useBean id="user" class="com.user.userInfo.User" scope="request" />
<!--获取JAVA类成员的所有变量-->
<jsp:setProperty name="user" property="*" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
name: <jsp:getProperty name="user" property="name"></jsp:getProperty><br><br>
password: <jsp:getProperty name="user" property="password"></jsp:getProperty><br><br>
name: <jsp:getProperty name="user" property="id"></jsp:getProperty><br><br>
name: <jsp:getProperty name="user" property="email"></jsp:getProperty><br><br>
<s:a href="test.html">测试</s:a>
</body>
</html>