zoukankan      html  css  js  c++  java
  • spring mvc开发过程中的乱码问题

    在保证jsp,xml,数据库,编辑器编码一致的情况下。

    1,用户输入中文,后台接收到也是中文,但是保存到数据库时乱码,

    解决方法:

    链接数据库的url="jdbc:mysql://localhost:3306/lr"

    加上编码设置,修改为:url="jdbc:mysql://localhost:3306/lr?characterEncoding=UTF-8"

    且在配置数据库连接池时加上一个配置项:useUnicode="true"

    2,用户输入中文,get方式请求后台获取内容乱码,这个一般情况下是服务器的编码设置的问题,

    解决方法:

    在服务器的server.xml配置项的:

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" />

    加上编码配置,修改为:

    <Connector connectionTimeout="20000" port="8080" protocol="HTTP/1.1" redirectPort="8443" useBodyEncodingForURI="true"/>

    3,ajax后台返回到前台时中文乱码,

    解决方法:

    在spring MVC的Controller:

    @RequestMapping(value = "xxxx", method = RequestMethod.GET)

    public @ResponseBody String a(@RequestParam("email") String email) {


        return "我是返回给前台的中文字符串";
    }

    加上produces = "text/html;charset=UTF-8",修改为:

    @RequestMapping(value = "xxxx", method = RequestMethod.GET, produces = "text/html;charset=UTF-8")

    public @ResponseBody String a(@RequestParam("email") String email) {


        return "我是返回给前台的中文字符串";
    }

    以上就是目前遇到的乱码问题解决办法,至于其他的乱码,大部分可能是前后台编码不同意造成的,

    只要一开始将显示层,配置信息,编辑器和数据库等各处的编码方式设置统一了,遇到乱码问题还是很少的。

  • 相关阅读:
    redis未授权访问简单总结
    CORS跨域资源共享漏洞初探
    Mysql UDF提权方法
    hacknos-player靶机渗透
    深入理解Java虚拟机-类加载连接和初始化解析
    Dnslog盲注
    让服务器使用密钥
    自动备份站点
    自动放行nginx后台访问ip
    mysql增备
  • 原文地址:https://www.cnblogs.com/SHANKS-log/p/5151684.html
Copyright © 2011-2022 走看看