mysql存入的中文数据乱码,可能有这两个原因
原因一 : 数据源配置和mysql字符集编码不符,或数据源配置没有设置字符集
解决方案:在数据源配置添加字符集 useUnicode=true&characterEncoding=utf-8
原因二: 在接受数据的时候已经乱码
解决方案: 1,在接受数据的时候通过代码进行转码
HttpServletRequest request=ServletActionContext.getRequest();
request.setCharacterEncoding("UTF-8");
String sex=request.getParameter("userSex");
String sexs=new String(sex.getBytes("ISO-8859-1"),"UTF-8");
2,在接受数据的时候就进行转码,在tomcat server.xml中添加 useBodyEncodingForURI="true" URIEncoding="UTF-8"