㈠ java的session用法
import
java.io.IOException;
import
javax.servlet.Filter;
import
javax.servlet.FilterChain;
import
javax.servlet.FilterConfig;
import
javax.servlet.ServletException;
import
javax.servlet.ServletRequest;
import
javax.servlet.ServletResponse;
import
javax.servlet.http.HttpServletRequest;
import
javax.servlet.http.HttpServletResponse;
import
javax.servlet.http.HttpSession;
import
com.fz.entity.User;
public
class
ValidatorFilter
implements
Filter
{
public
void
destroy()
{
}
public
void
doFilter(ServletRequest
arg0,
ServletResponse
arg1,
FilterChain
arg2)
throws
IOException,
ServletException
{
HttpServletRequest
request
=
(HttpServletRequest)arg0;
HttpServletResponse
response
=
(HttpServletResponse)arg1;
HttpSession
session
=
request.getSession();
User
user
=
(User)session.getAttribute("user");
//判断用户是否登录,如果没有登录,则直接重定向至登录页面,
//如果登录,则将请求交给下一个过滤器或者目标资源
if(user
==
null||user.getUserName()==null){
response.sendRedirect(request.getContextPath()+"/login.jsp");
}else{
arg2.doFilter(request,
response);
}
}
public
void
init(FilterConfig
filterConfig)
throws
ServletException
{
}
以上是filter的代码
以下是在web.xml中的配置
<filter>
<filter-name>validatorFilter</filter-name>
<filter-class>com.fz.filter.ValidatorFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>validatorFilter</filter-name>
<url-pattern>/user/*</url-pattern>
</filter-mapping>
㈡ java中httpSession这个接口具体的实现在哪啊不是接口不能被实例化对象的吗
JAVA特性的一个: 多态
好处很多啊: 最大的好处就是 不改代码,灵活赋值
比如: 接口A 下在有 实现类 B,C,D
那你只要一个 接口A的变量 就可以接收 new B(), new C(); new D();
并且调用实现类从接口 实现来的方法, 三个实现类你把哪个的实现赋值给接口变量,这个接口变量就能调用哪 个实现类的方法
㈢ java获取session的值怎么使用
java获取session的值每次登陆的时候使用。
HttpSession session=request.getSession();//获取session
String[] names = session.getValueNames();
for (int i = 0; i < names.length; i++) {
System.out.println(names[i] + "," + session.getValue(names[i]));
}