标签:imageio 插入 rect aws 登录 情况 后台管理系统 type login
响应对象.sendRedirect("地址")
请求对象.getRequestDispatcher("地址").forward(请求,响应);
1. 重定向属于服务器外部跳转
forward属于服务器内部跳转
2. 重定向地址栏会改变,forward不会改变
3. forward效率更高
使用请求转发存在表单重复提交问题
出现的情况:
1. 使用请求转发到新的页面,在新页面点击刷新
2. 多次点击提交按钮
3. 跳转到新页面,新页面返回,再刷新
提高登录系统的安全性,防止机器人对系统进行攻击
- 图形的绘制
- 随机产生4个字母或数字
BufferedImage 内存中的图片
BufferedImage(int width,int height,int type)Graphics 绘图
获得方法:ImageIO 图片工具类
write(BufferedImage image,String format,OutputStream out)实现过程:
验证码Servlet:
1. 创建内存图片
2. 获得绘图对象
3. 设置颜色、字体
4. 填充背景
5. 随机绘制四个字母或数字
6. 将验证码字符串保存到Session
7. 发送图片到浏览器
登录JSP:
1. 添加img标签,src设置为Serlvet的URL
2. 实现点击更新验证码
3. 添加输入框,输入验证码
登录Servlet
1. 获得验证码参数和Session中验证码进行比较
过滤器可以过滤各种Web项目中的资源
执行某些通用的操作
比如:给每个Servlet设置编码可以对某些请求进行拦截
比如:对没有登录的请求进行拦截
实现方法:
init 初始化注册
web.xml 注册
@WebFilter 注解
doFilter(HttpServletRequest req,HttpServletResponse resp,FilterChain chain)
doFilter 如果过滤器链执行该方法,不执行就是拦截
<filter>
<filter-name>EncodingFilter</filter-name>
<filter-class>com.qianfeng.nanny.filter.EncodingFilter</filter-class>
</filter>
<!-- 配置过滤器过滤资源的URL -->
<filter-mapping>
<filter-name>EncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
@WebFilter("/*")
@WebFilter({"/login.jsp","/login.do"})
@WebFilter("*.do")
/*代表拦截所有资源
/login.jsp,/login.do 拦截指定的资源
*.do 拦截最后为.do的资源
标签:imageio 插入 rect aws 登录 情况 后台管理系统 type login
原文地址:https://www.cnblogs.com/macht/p/11644979.html