Java项目跨服务中文乱码:从A服务中增加一条中文的记录,到了B服务的数据库中就变成了乱码
最近在做一个项目,有一个功能是这样的:A服务中有个通讯录功能,可以对通讯录进行增删改查的操作。但通讯录是存在B服务中的数据库的。那么问题出现了,从A服务中增加一条中文的记...
最近在做一个项目,有一个功能是这样的:A服务中有个通讯录功能,可以对通讯录进行增删改查的操作。但通讯录是存在B服务中的数据库的。那么问题出现了,从A服务中增加一条中文的记录,到了B服务的数据库中就变成了乱码,然后在B服务的页面输出通讯录时,因为它没有做转码处理,所以显示是乱码。该怎么做能让A服务储存进去的中文在B服务的数据库中不是乱码呢?(PS:B服务数据库中的那个乱码字段是UTF-8编码,A服务存的时候该字段也是UTF-8编码的)谢谢。
展开
2个回答
展开全部
JSP吗?你可以在传进数据库之前打印出,看看是否是乱码,统一用UTF8:
页面三句:<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" language="java" import="java.sql.*" errorPage="" %>
<%request.setCharacterEncoding("UTF-8");%>(页面传值)
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
数据库链接(Mysql):private String uri="jdbc:mysql://localhost:3306/javaweb?useUnicode=true&characterEncoding=UTF-8";
数据库用的是什么?(Mysql):my.ini中mysql字段:default-character-set=utf8,mysqld字段character-set-server=gbk(这句是mysql有的,好像它不支持utf8显示中文);建立数据库和表的时候都指明编码为utf8
其他的数据库应该是类似的,编码问题有很多处,一旦一个地方的编码不同意都可能出现乱码
页面三句:<%@ page contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" language="java" import="java.sql.*" errorPage="" %>
<%request.setCharacterEncoding("UTF-8");%>(页面传值)
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
数据库链接(Mysql):private String uri="jdbc:mysql://localhost:3306/javaweb?useUnicode=true&characterEncoding=UTF-8";
数据库用的是什么?(Mysql):my.ini中mysql字段:default-character-set=utf8,mysqld字段character-set-server=gbk(这句是mysql有的,好像它不支持utf8显示中文);建立数据库和表的时候都指明编码为utf8
其他的数据库应该是类似的,编码问题有很多处,一旦一个地方的编码不同意都可能出现乱码
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询