java中文乱码问题解决
1 处理乱码方式:
1 连接数据库的时候
jdbc.properties:jdbc:mysql://localhost:3306/myproject?useUnicode=true&characterEncoding=utf8
2 修改mysql配置文件my.ini/my.cnf default-character-set=utf8
3 修改tomcat中的配置文件server.xml改为
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8"/>
4 在web.xml配置spring过滤器
<filter>
<filter-name>char</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>
</filter>
<filter-mapping>
<filter-name>char</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
5 设置mysql字符集
show variables like'character_set_%';
把显示的character_set_**全都设置成utf8,即是:set character_set_serve='utf8'
show variables like '%collation%';
把显示的都设置成为如下:set collation_server='utf8_general_ci‘
6.取值时HTtp(post)请求中的中文乱码
在Servlet页面中 添加
request.setCharacterEncoding("utf-8");
user_name = request.getParameter("user_name") == null? "" : java.net.URLDecoder.decode(request.getParameter("user_name"), "UTF-8");
7。前台返回????
后台赋值:errorMessage = URLEncoder.encode("redis中没有该定期数据信息", "UTF-8").replace("+", "%20");
前台取值:decodeURIComponent(errorMessage)
最新文章
- git文件迁移到新架构
- Docker 学习笔记(CentOS 7.1)
- kernel source reading notepad
- 从URI中获取实际的文件path
- 月赛-Crackhash
- GridView中的编辑和删除按钮,执行更新和删除代码之前的更新提示或删除提示
- Socket学习总结系列(二) -- CocoaAsyncSocket
- 【漏洞公告】CVE-2017-12615/CVE-2017-12616:Tomcat信息泄漏和远程代码执行漏洞
- C# 文件下载
- MATLAB绘制函数图
- 【golang-GUI开发】qt之signal和slot(二)
- wingide 远程调试
- 面向对象+unittest+pytest
- Delphi 与 C/C++ 数据类型对照表
- idea maven编译jdk报错
- Python基础案例教程
- svn+apache+ssl快速部署
- HashMap与ConcurrentHashMap的区别<;转>;
- 4G模块ME3760_V2的拨号过程
- SqlServer PIVOT函数快速实现行转列,UNPIVOT实现列转行(转)