JSP页面写入中文到数据库乱码问题

今天遇到了,用了struts2之后,从jsp页面向数据库插入数据、修改数据时,插入的中文和修改的中文全是乱码的问题。

可以确定mysql的编码和jsp的编码都统一为utf-8,所以问题出在哪里一时间找不出来。

数据库编码

+--------------------------+---------------------------------------------------------------+
| Variable_name            | Value                                                         |
+--------------------------+---------------------------------------------------------------+
| character_set_client     | utf8                                                          |
| character_set_connection | utf8                                                          |
| character_set_database   | utf8                                                          |
| character_set_filesystem | binary                                                        |
| character_set_results    | utf8                                                          |
| character_set_server     | utf8                                                          |
| character_set_system     | utf8                                                          |
| character_sets_dir       | C:\Program Files (x86)\MySQL\MySQL Server 5.5\share\charsets\ |
+--------------------------+---------------------------------------------------------------+

一开始试了以下方法,结果没用
<%@ page contentType="text/html;charset=UTF-8"%>
<%@ page pageEncoding="UTF-8"%>

然后是这种,也没用

response.setContentType("text/html;charset=UTF-8");
request.setCharacterEncoding("UTF-8");

既然不关数据库和jsp的事情,那应该就是tomcat的问题了,于是我去查了怎么修改tomcat的配置文件
更改tomcat服务器编码
修改Tomcat—->conf—–>server.xml文件,在修改端口的标签后面加一行代码,如下:

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

自此终于解决了乱码问题。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值