2021-08-22 初识过滤器
首先导入包
<!-- 连接数据库 --><!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><version>6.0.6</version></dependency></dependencies>
主代码执行
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;public class ShowServlet extends HttpServlet {@Overrideprotected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {resp.getWriter().write("你好呀,玩吗");}@Overrideprotected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {doGet(req, resp);}
}
编写过滤器
import javax.servlet.*;
import java.io.IOException;//过滤器
public class CharacterEncodingFilter implements Filter {public void init(FilterConfig filterConfig) throws ServletException {System.out.println("CharacterEncodingFilter初始化");}// filterChain:;链的意思/** 过滤中的所有代码,在过滤特定请求时都会执行* 必须要让过滤器继续通行 filterChain.doFilter(servletRequest,servletResponse);** */public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {servletRequest.setCharacterEncoding("utf-8");servletResponse.setCharacterEncoding("utf-8");servletResponse.setContentType("text/html;charset=UTF-8");System.out.println("CharacterEncodingFiltetr执行前");filterChain.doFilter(servletRequest,servletResponse); //让我们的请求继续执行,如果不写,程序到这里结束System.out.println("CharacterEncodingFiltetr执行后");}//web服务器关闭时过滤器会销毁public void destroy() {System.out.println("CharacterEncodingFilter已销毁");}
}
XML配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"version="4.0"><servlet><servlet-name>ShowServlet</servlet-name><servlet-class>com.pangiggs.servlet.ShowServlet</servlet-class></servlet><servlet-mapping><servlet-name>ShowServlet</servlet-name><url-pattern>/ss/sh</url-pattern></servlet-mapping><servlet-mapping><servlet-name>ShowServlet</servlet-name><url-pattern>/show</url-pattern></servlet-mapping><!--配置过滤器 --><filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>com.pangiggs.filter.CharacterEncodingFilter</filter-class></filter><filter-mapping><filter-name>CharacterEncodingFilter</filter-name><!--只要是/ser下的任何请求,都会经过这个过滤器 --><url-pattern>/ss/*</url-pattern></filter-mapping></web-app>
2021-08-22 初识过滤器相关推荐
- 2021.08.22学习内容torch.cat()和torch.stack()函数
torch.cat()函数 将两个张量(tensor)拼接在一起,cat是concatnate的意思,即拼接,联系在一起. def cat(tensors: List[torch.Tensor], d ...
- 本博客导读(2021/08/09更新)
文章目录 1. 简介 1.1 博客精神 1.2 写作目的 1.3 技术方向 1.4 博主 1.5 版权说明 2 推荐内容 2.1 主要代表作 2.2 其他推荐内容 3. 程序类 3.1 C#程序设计 ...
- Java入门篇 2021/02/22
Java入门篇 2021/02/22 Java的三大版本 java三大版本主要包括 JavaSE, JavaME, JavaEE,其中现如今的JavaME已经是很少见了,JavaSE是JavaEE的基 ...
- JAVA基础学习预科部分 (Markdown + dox)2021/2/22持续更新中
javaSE从 2021/02/22开始,预计到2021/02/28,原本预计的算法题解先鸽一下. -博客Blog的重要性 & Markdown语法 基础markdown语法 标题, 直接使用 ...
- 2021.07.22禾赛提前批一面面经
2021.07.22禾赛提前批一面面经 1.LUTRAM的意思 2.LUTRAM和block RAM的区别 3.时序约束和时序优化 4.跨时钟域 5.为什么不能多bit采用同步寄存器打两拍(就这个问题 ...
- 2021.1.22平安科技面经--算法工程师实习生
2021.1.22平安科技面经–算法工程师实习生 岗位:算法工程师实习生 自我介绍(这个地方我自己需要去提炼一下) 机器学习,人工智能了解得多吗? 那你是怎么自学机器学习,深度学习呢? 那什么是过拟合 ...
- 2021.08.09【普及组】模拟赛C组比赛总结
文章目录 2021.08.09[普及组]模拟赛C组比赛总结 写在前面: T1 :[普及模拟]生产武器 题目大意: 正解: T2 :[普及模拟]城市连接 题目大意: 正解: T3 :[普及模拟]抢救文件 ...
- 《安富莱嵌入式周报》第227期:2021.08.23--2021.08.29
往期周报汇总地址:http://www.armbbs.cn/forum.php?mod=forumdisplay&fid=12&filter=typeid&typeid=104 ...
- 哈工大自动出校申请(selenium+chromedriver)(2021.3.22更新)
哈工大自动出校申请 注意事项 安装selenium 安装chromedriver 代码修改 2021.3.22更新 selenium 安装与 chromedriver安装可以参考以下: https:/ ...
- 致读者的一封信——付费专栏《数据科学技术与应用_中国大学MOOC_持续更新》用户调查【2021/1/22】
致读者的一封信 付费专栏<数据科学技术与应用_中国大学MOOC_持续更新>用户调查 2021/1/22 读者您好!我是CSDN博主Herbert胡不归. 为了更好地针对付费专栏<数据 ...
最新文章
- solr4.1 DataImport MYSQL批量导入
- ubuntu安装pr_在Ubuntu 16.04服务器上安装Zabbix 3.2
- 005. how is RFC to backend determined - maintenance view IWFNDV_MGDEAM
- 新年立个小目标!代码写得更规范!
- 【Java】对Java构造器参数问题的若干思考
- 信息学奥赛一本通 1137:加密的病历单 | OpenJudge NOI 1.7 12
- 提高效率--录制视频教程
- 全国计算机模拟PPT考试,全国计算机等级考试模拟_试_题.ppt
- 病毒木马查杀实战第025篇:JS下载者脚本木马的分析与防御
- cd linux menu.lst,Windows 7 中使用 grldr + menu.lst 引導 linux系統和win7.
- 大数据(7f)比较Python和Scala面向对象
- STM32 FMPI2C 简单访问代码
- 用户交互设计10个可用性指标
- 前端Bani Yas
- 中国科技大学科学岛计算机系,中国科学技术大学2020年优秀大学生科学岛推免夏令营通知...
- leaflet加载天地图影像、地形、矢量底图
- commvault xtrabackup全实例备份失败 处于未决状态
- 基姆拉尔森计算公式(快速推导当前日期是周几)
- 喝酒摇骰子重启人生多款微信小程序源码分享
- AUTOCAD——总结CAD画圆角的三种方式
热门文章
- 【安全牛学习笔记】SSL、TLS拒绝服务***和补充概念
- sqlserver为数据库表增加自增字段
- 【持久化框架】SpringMVC+Spring4+Mybatis3集成,开发简单Web项目+源码下载 【转】...
- fdisk添加分区引起的Linux Error: 22: Invalid argument
- Azure 网站上的 Java
- 【ASP.NET】 GriedView 增删改查+ 自带分页
- vue里动态设置并获取ref
- 类-描述器-把类对象方法转变为属性方式
- php_l3arning_notes_2
- HDOJ:1533-Going Home(最小费用流)