安全登陆
根据username查出用户, 判断用户的密码属性跟,输入的密码是否相等,返回值是一个用户对象,根据对象是否为空判断登陆的成功与失败。
安全访问(访问某些,需要验证你,是存在用户,的资源时)
1.当用户成功登陆时,把用户设置到session中,2.在该资源页面判断,session中是否有登陆用户。有就可以访问,没有跳转到登陆。
验证码
在表单验证码那里
验证码:<input type="text" name="code"><img src="codeServlet">
使用validatecode包,String code=validatecode.getcode(); 把code存入session中。在登陆的时候判断看输入的跟产生的是否忽略大小写相等。最好判断不相等的条件,然后相等的情况,就直接走下面的代码。
而且在前端请求验证码时,为防止每次请求的验证码是同样的,需要在请求url后面拼接:"?d="+“new date()” 以确保每次请求不一样,就不会从缓冲里给你拿同一份,d只是个字母,可以随便写
过滤器统一处理编码:
@WebFilter("/*")
request.setCharacterEncoding("utf-8");
response.setContentType("text/html;charset=utf-8");
chain.doFilter(request,response);
过滤器----解决访问权限
只有登陆后的用户才可以访问,某些资源,这些资源都会经过过滤器,业务判断为:只有当用户存在 ||或者 访问登陆页面时才放行。其它情况都 跳转登陆。