javaweb中Filter(过滤器)的常见应用
2017-02-11 01:49
204 查看
一、统一全站字符编码
通过配置参数charset指明使用何种字符编码,以处理Html Form请求参数的中文问题
?
web.xml文件中的配置如下:
?
二、禁止浏览器缓存所有动态页面
有3 个HTTP 响应头字段都可以禁止浏览器缓存当前页面,它们在 Servlet 中的示例代码如下:
response.setDateHeader("Expires",-1);
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
并不是所有的浏览器都能完全支持上面的三个响应头,因此最好是同时使用上面的三个响应头。
Expires数据头:值为GMT时间值,为-1指浏览器不要缓存页面
Cache-Control响应头有两个常用值:
no-cache指浏览器不要缓存当前页面。
max-age:xxx指浏览器缓存页面xxx秒。
?
web.xml文件中的配置如下:
?
三、控制浏览器缓存页面中的静态资源
有些动态页面中引用了一些图片或css文件以修饰页面效果,这些图片和css文件经常是不变化的,所以为减轻服务器的压力,可以使用filter控制浏览器缓存这些文件,以提升服务器的性能。
?
web.xml文件中的配置如下:
?
四、实现用户自动登陆
思路是这样的:
1、在用户登陆成功后,发送一个名称为user的cookie给客户端,cookie的值为用户名和md5加密后的密码。
2、编写一个AutoLoginFilter,这个filter检查用户是否带有名称为user的cookie来,如果有,则调用dao查询cookie的用户名和密码是否和数据库匹配,匹配则向session中存入user对象(即用户登陆标记),以实现程序完成自动登陆。
核心代码如下:
处理用户登录的控制器:LoginServlet
?
处理用户自动登录的过滤器:AutoLoginFilter
?
如果想取消自动登录,那么可以在用户注销时删除自动登录cookie,核心代码如下:
?
通过配置参数charset指明使用何种字符编码,以处理Html Form请求参数的中文问题
?
?
有3 个HTTP 响应头字段都可以禁止浏览器缓存当前页面,它们在 Servlet 中的示例代码如下:
response.setDateHeader("Expires",-1);
response.setHeader("Cache-Control","no-cache");
response.setHeader("Pragma","no-cache");
并不是所有的浏览器都能完全支持上面的三个响应头,因此最好是同时使用上面的三个响应头。
Expires数据头:值为GMT时间值,为-1指浏览器不要缓存页面
Cache-Control响应头有两个常用值:
no-cache指浏览器不要缓存当前页面。
max-age:xxx指浏览器缓存页面xxx秒。
?
?
有些动态页面中引用了一些图片或css文件以修饰页面效果,这些图片和css文件经常是不变化的,所以为减轻服务器的压力,可以使用filter控制浏览器缓存这些文件,以提升服务器的性能。
?
?
思路是这样的:
1、在用户登陆成功后,发送一个名称为user的cookie给客户端,cookie的值为用户名和md5加密后的密码。
2、编写一个AutoLoginFilter,这个filter检查用户是否带有名称为user的cookie来,如果有,则调用dao查询cookie的用户名和密码是否和数据库匹配,匹配则向session中存入user对象(即用户登陆标记),以实现程序完成自动登陆。
核心代码如下:
处理用户登录的控制器:LoginServlet
?
?
?
相关文章推荐
- javaweb中Filter(过滤器)的常见应用
- javaWeb之过滤器Filter
- Filter(过滤器)常见应用
- 10018---JavaWeb基础--过滤器(Filter)
- Filter(过滤器)常见应用
- 【JavaWeb】之过滤器Filter
- java web 开发技术应用-过滤器
- Java Web 的servlet 之过滤器 filter
- javaweb学习总结(四十六)——Filter(过滤器)常见应用
- Java Web开发技术应用——过滤器
- javaweb学习总结(四十六)——Filter(过滤器)常见应用
- javaweb学习总结(四十六)——Filter(过滤器)常见应用
- javaWeb自定义可排序过滤器注解,解决Servlet3.0下@WebFilter注解无法排序问题
- javaweb学习总结(四十六)——Filter(过滤器)常见应用
- 深入分析JavaWeb 8 -- HttpServletResponse常见应用
- 深入分析JavaWeb 37 -- 过滤器Filter典型應用
- javaWeb-Servlet之Filter(过滤器)
- javaWeb-Servlet之Filter(过滤器二)
- Java Servlet Filter实现Web路径和用户日志过滤器
- Java的WEB应用性能问题定位方法总结:常见的性能指标分析 .