关于servlet filter

mybcb 2011-12-30 04:36:39
我写了一个网页面程序
login.jsp 这个页面输入用户名与密码
checkpassword.jsp这个页面检查用户名与密码
如果用户正确,就导航到main.jsp页面。
如果密码不正确就返回login.jsp这个页面

我现在写了一个Servlet 的过滤器,检查用户登录的时候,密码固定加上abc,才能登录。

如果不启用这个过滤器的话,就用原来的密码登录。

public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {

String userName = ((HttpServletRequest) request).getParameter("username");
String password = ((HttpServletRequest) request).getParameter("password");


if(password.substring(password.length()-3).equals("abc"))
{

//密码正确
}
else
{
//密码不正确
}


}

在上面的代码中,怎么跳转呢。
...全文
83 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lxbccsu 2012-01-04
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 mybcb 的回复:]
不是改"abc"的值,我重新定向时,需要把密码改了再重新定向
[/Quote]
改密码也是一样的,你直接重定向到一个密码修改的页面,改完提交再重新定向就是;
mybcb 2011-12-30
  • 打赏
  • 举报
回复
有没有人回答啊
mybcb 2011-12-30
  • 打赏
  • 举报
回复
不是改"abc"的值,我重新定向时,需要把密码改了再重新定向
lxbccsu 2011-12-30
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 mybcb 的回复:]
如果要改变password的值,怎么改变呢?
[/Quote]
不知道是否是改变"abc"的值;

如果是:
你可以把这些信息配置在web.xml中;
如:

<filter>
<filter-name>passwordFilter</filter-name>
<filter-class>yourFilter</filter-class>
<init-param>
<param-name>suffixPassword</param-name>
<param-value>abc</param-value>
</init-param>
</filter>

然后在Filter中的加上

private String suffixPasword = "";
@Override
public void init(FilterConfig config) throws ServletException {
suffixPasword = config.getInitParameter("suffixPassword");
}

你上面的doFilter就可以这样处理了:

if(password.substring(password.length()-3).equals(suffixPasword))
mybcb 2011-12-30
  • 打赏
  • 举报
回复
如果要改变password的值,怎么改变呢?
安心逍遥 2011-12-30
  • 打赏
  • 举报
回复
重定向,然后转发
  • 打赏
  • 举报
回复
response.sendRedirect("/login.jsp");


RequestDispatcher dispatcher = request.getRequestDispatcher("/main.jsp");
dispatcher .forward(request, response);

13,100

社区成员

发帖
与我相关
我的任务
社区描述
Java J2ME
社区管理员
  • J2ME社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧