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

南充市建设局网站包装设计公司 山东

南充市建设局网站,包装设计公司 山东,怎样做分类网站,网页设计个人主页模板1.字符乱码出现的原因: 出现乱码是由于数据在传递和接受过程中字符编码格式不一致导致的。 for examples: 输入11-->在2进制中代表的是3-->在8进制中代表的是9-->在16进制中代表的17在这里同样输入的都是11,但是由于进制的不一样,所…

1.字符乱码出现的原因:

出现乱码是由于数据在传递和接受过程中字符编码格式不一致导致的。

for examples:

输入11-->在2进制中代表的是3-->在8进制中代表的是9-->在16进制中代表的17

  在这里同样输入的都是11,但是由于进制的不一样,所以代表的值也不一样。

同理,编码在底层都是一串字节码,由于编码格式的不同,比如以UTF-8编码格式进行编码,以iso8859-1编码格式就无法进行解析,所以所展现出来的字符串就不是原先的字符串了。

2.字符乱码的解决方式

2.1将乱码先进行编码,在进行解码(不管是get请求还是post请求都适用)

String userCount = User.getUserCount();
//将乱码字符串按照错误的编码格式转换为原始的字节码序列
byte[] bs = userCount.getBytes("iso889-1");
//将原始的字节码序列使用正确的编码格式进行编码,转换为正确的文字
userCount  = new String(bs,"utf-8");

2.2使用spring框架构建项目的话可以使用编码过滤器(post请求方式)

在web.xml中添加:  

<filter><filter-name>encoding</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class></filter><filter-mapping><filter-name>encoding</filter-name><servlet-name>springmvc</servlet-name></filter-mapping>

  <servlet-name>springmvc</servlet-name>说明只要请求被前端控制器拦截到,就会执行这个名称为encoding的filter。

 CharacterEncodingFilter的源码如下:

public class CharacterEncodingFilter extends OncePerRequestFilter {/*设置了两个属性encoding和forceEncoding,encoding代表的是编码格式,forceEncoding表示是否启用*/private String encoding;private boolean forceEncoding = false;public CharacterEncodingFilter() {}public void setEncoding(String encoding) {this.encoding = encoding;}public void setForceEncoding(boolean forceEncoding) {this.forceEncoding = forceEncoding;}protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain) throws ServletException, IOException {/*当编码格式不为空以及forceEncoding为true时,那么设置就将服务器端的编码格式设置为配置文件中设置的编码格式*/if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)) {
      //只能修改请求体中编码方式request.setCharacterEncoding(
this.encoding);if (this.forceEncoding) {response.setCharacterEncoding(this.encoding);}}filterChain.doFilter(request, response);} }

所以需要在web.xml中设置encoding和forceEncoding的初始化值

  <filter><filter-name>encoding</filter-name><filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class><init-param><param-name>encoding</param-name><param-value>UTF-8</param-value></init-param><init-param><param-name>forceEncoding</param-name><param-value>true</param-value></init-param></filter><filter-mapping><filter-name>encoding</filter-name><servlet-name>springmvc</servlet-name></filter-mapping>

2.3如果是本地的项目的话,可以在tomcat的配置文件server.xml中修改编码格式 (get请求)

<Connector URIEncoding="UTF-8" port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />

  在server.xml配置文件下,添加属性URIEncoding="UTF-8"

总结:字符乱码问题需要分get请求和post请求。

转载于:https://www.cnblogs.com/wsxdev/p/11432122.html

http://www.yayakq.cn/news/562871/

相关文章:

  • 个人网站制作代码wordpress 视频播放器插件
  • 如何知道一个网站是谁做的大数据平台是什么
  • 上海闵行区 网站建设国内扁平化网站欣赏
  • 做shopify网站静态网站建设报告
  • 外贸自建站可以自己做网站吗企业主页设计模板
  • 网站建设捌金手指花总十深圳论坛网站设计哪家公司好
  • 高端品牌男鞋优化视频
  • 建筑材料东莞网站建设商城建站模板
  • 设计联盟网站设计在线中国
  • 安丘市住房与城市建设路网站营销推广文案
  • 软件开发者江门seo网站排名
  • 网站平台搭建要多少钱互联网网站模版
  • django做购物网站网页素材及网站架构制作
  • 网站建设如何更改背景图片如何使用wp做网站
  • 想找人做网站 要怎么选择站酷网手机版
  • 设计专业网站公司郴州网约车平台有哪些
  • 建网站引流做淘宝沈阳企业网站开发
  • 做散热网站校园网站设计描述
  • 三里屯做网站的公司专业电子网站建设
  • 网站备案中的网站名称安仁网站制作
  • 深圳专业网站建设要求做cpa用什么类型的网站好
  • 100个免费货源网站广西南宁市网站制作公司
  • 网站建设流程及费用网站关键词书写步骤
  • 地产网站开发网站上放百度地图
  • 用c3做的动画网站公司网站设计报价
  • 外贸网站打开速度网站优化过度的表现
  • 上海高端网站建设信息发布
  • 免费网站建设域名大型网站开发软件
  • 政协网站 是政协信息化建设广告怎么做
  • 网站建设可以学吗成都微信小程序开发