当前位置: 首页 > news >正文

中国建设网站银行卡吗seo关键词排名优化制作

中国建设网站银行卡吗,seo关键词排名优化制作,唯品会 一家专门做特卖的网站手机版,厦门seo哪家强处理SpringMVC中乱码问题 处理原生Servlet中请求和响应的乱码问题,参考文章 Servlet中的过滤器的实现及其原理,参考文章 配置CharacterEncodingFilter 在Servlet规范中要求request和response对象设置编码之前不能有获取请求参数和响应数据的操作,否则后续设置的编码都将不起…

处理SpringMVC中乱码问题

处理原生Servlet中请求和响应的乱码问题,参考文章

Servlet中的过滤器的实现及其原理,参考文章

配置CharacterEncodingFilter

在Servlet规范中要求request和response对象设置编码之前不能有获取请求参数和响应数据的操作,否则后续设置的编码都将不起作用

  • 但是DispatcherServlet给控制器方法注入request时一定是已经获取了所有的请求参数,否则我们不能直接在控制器方法上声明形参获取请求参数的值

在web.xml中注册SpringMVC提供的编码过滤器CharacterEncodingFilter, 要想在DispatcherServlet获取参数前设置编码必须在其他过滤器之前配置它否则无效

  • 使用init-param初始化参数标签设置encoding属性的值指定POST请求的编码格式,如UTF-8
  • 使用init-param初始化参数标签设置forceEncoding属性的值指定响应的编码格式,true表示响应和请求的编码格式一致,fasle表示默认编码格式
<!--配置一个字符编码的Filter,一定注意字符编码filter一般都在其他Filter之前-->
<filter><filter-name>CharacterEncodingFilter</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><!--设置encoding属性的值解决POST请求乱码--><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><init-param><!--设置forceEncoding属性的值解决响应乱码--><param-name>forceEncoding</param-name>	<param-value>true</param-value></init-param>
</filter>
<filter-mapping><filter-name>CharacterEncodingFilter</filter-name><url-pattern>/*</url-pattern>
</filter-mapping>

CharacterEncodingFilter继承的OncePerRuquestFilter重写了doFilter(request,response,filter)并调用doFilterInternal(request,response,filter)方法执行过滤

// CharacterEncodingFilter的构造方法
public CharacterEncodingFilter(String encoding, boolean forceEncoding) {// encoding属性的值是我们在配置文件中设置的编码格式// forceEncoding属性的值就是我们在配置文件中设置的布尔值truethis(encoding,forceEncoding,forceEncoding);
}public CharacterEncodingFilter(string encoding, boolean forceRequestEncoding, boolean forceResponseEncoding){Assert.hasLength(encoding,"Encoding must not be empty");this.encoding = encoding;this.forceRequestEncoding = forceRequestEncoding;this.forceResponseEncoding = forceResponseEncoding;
}// OncePerRuquestFilter重写了doFilter(request,response,filter)
@override
public final void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)throws servletException, IOException {//.............// 满足条件放行filterChain.doFilter(request,response);// 不满足条件执行过滤规则doFilterInternal(httprequest,httpresponse,filterChain);
}// CharacterEncodingFilter重写的doFilterInternal方法
protected void doFilterInternal(HttpservletRequest request, HttpservletResponse response, FilterChain filtel)throws ServletExceptionIOException {string encoding = getEncoding(); // 判断我们在是否在web.xml文件中设置了编码格式if (encoding != null) {// 如果设置了编码格式,并且forceRequestEncoding的属性值为true或request对象之前没有设置过编码(确实没有设置过),此时就可以设置请求的编码if (isForceRequestEncoding() || request.getcharacterEncoding() == null){// 设置请求的编码request.setCharacterEncoding(encoding);}// 如果设置了编码格式,并且forceResponseEncoding属性值为true,此时就可以设置响应的编码if (isForceResponseEncoding()){response.setcharacterEncoding(encoding);}}// 放行filterchain.dofilter(reauest. response);
}
http://www.dt0577.cn/news/28905.html

相关文章:

  • 建立个机密网站舟山百度seo
  • 做视频大赛推广的网站各大网站排名
  • 平昌城乡与住房建设部网站谈谈你对互联网营销的认识
  • UltraEdit做网站教程河南整站关键词排名优化软件
  • wordpress 分类 字段企业站seo
  • 怎样做公司的网站百度竞价品牌广告
  • java网站项目可做刷网站百度关键词软件
  • 新网站怎么运营网络视频营销平台
  • 初中生做网站挣钱鞋子软文推广300字
  • 淘宝客怎样建网站优化营商环境工作总结
  • 淮上网站建设江苏seo平台
  • 南沙区做网站外贸企业网站制作哪家好
  • 专业网站建设费用包括哪些百度关键词seo公司
  • 乐清企业网站制作网站怎么制作免费的
  • 快速开发工具网站百度竞价是什么意思?
  • 昆明高端网站建设百度贴吧人工客服
  • 一起做网站17怎么下单seo实训报告
  • 网站建设公司上海做网站公司百度云盘网页登录入口
  • 做片子 我们是认真的网站活动软文怎么写
  • 郑州微网站建设google谷歌搜索主页
  • 十大门户网站有哪些求职seo
  • java建网站免费加客源
  • 什么网站可以做软件有哪些seo团队管理系统
  • 深圳网站建设哪家公司便宜百度怎么转人工客服
  • 杭州营销型网站建设seo推广软件代理
  • 博创网站建设团队免费推广的渠道有哪些
  • 佛山网站建设过程如何把自己的网站推广出去
  • 分类目录网站做排名2024年度关键词
  • 百度站长平台怎么验证网站杭州云优化信息技术有限公司
  • 做网站一月能赚50万吗网络公司起名