java web中的中文问题

get中文乱码:(URL中的中文出现乱码)
      在server.xml中的<Connector />标签中添加 URIEncoding="utf-8";
----------------------------------------------------------
post中文乱码:(获取表单中中文内容时出现乱码)
      在doPost方法中调用: 
          request.setCharacterEncoding("utf-8");
----------------------------------------------------------
往浏览器中写中文出现乱码:
      在doPost/doGet方法中调用:
          response.setContentType("text/html;charset=UTF-8");
----------------------------------------------------------
数据库中文问题:
      访问数据库是通过JDBC,所以可以通过设置 JDBC URL 来指定编码
            例:
            url="jdbc:mysql://localhost:3306/DB?useUnicode=true&characterEncoding=UTF-8";
----------------------------------------------------------
JS中的中文乱码:(一般是URL中的中文)
      Java中使用java.net.URLEncoding 和 java.net.URLDecoder 进行编码和解码,
      前端使用 encodeURI() 和 decodeURI() 进行编码/解码,且他们会按照utf-8进行编码/解码
      前端传参时要用 encodeURI() 编码,前端接收时要用 decodeURI() 解码
      后端获取前端的中文:前端用encodeURI() 进行两次编码,后端使用一次 URLDecoder.decode("string","UTF-8") 进行解码(因为request.getParameter()函数时,会自动进行一次URI的解码过程,所以前端编码两次后端只要编码一次)
posted @ 2020-05-05 14:37  一只小白的进修路  阅读(41)  评论(0)    收藏  举报