数据库中varchar类型的汉字转化为java中string以后在web中显示乱码

xtbda 2013-12-06 09:37:59
问题:
数据库中varchar类型的汉字转化为java中string以后在web中显示乱码,但是如果把数据库中的汉子改为英文,是可以正确显示的。求各大神解释一下,怎么做是可以正确实现,将数据库中的汉字在web中显示出来。
...全文
471 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
南猿北蛰 2013-12-09
  • 打赏
  • 举报
回复
究竟是数据在action中就乱码,还是action中正常,jsp中才乱码?
GGdadadad 2013-12-09
  • 打赏
  • 举报
回复
tomcat中的server.xml的URIEncoding改成UTF-8试试
闲去野鹤 2013-12-09
  • 打赏
  • 举报
回复
LZ还没有解决吗?
tony4geek 2013-12-06
  • 打赏
  • 举报
回复
编码统一, 转码/
闲去野鹤 2013-12-06
  • 打赏
  • 举报
回复
编码问题就这么难吗?显示不正常说明有地方的编码格式不一致嘛, LZ代码也不发一个,去哪帮你分析问题。 把容器(tomcat)的编码格式改成和数据库一样的试试,不要问怎么改,要是问我也不回答,自己百度去。
qqZuok 2013-12-06
  • 打赏
  • 举报
回复
这种一般就是编码格式的问题!页面编码格式、项目编码格式、数据库编码格式这三者统一!
teemai 2013-12-06
  • 打赏
  • 举报
回复
跟字段类型没关系。主要原因是编码格式不一致。你看下数据库编码,和你项目的编码
xtbda 2013-12-06
  • 打赏
  • 举报
回复
引用 2 楼 qqZuok 的回复:
这种一般就是编码格式的问题!页面编码格式、项目编码格式、数据库编码格式这三者统一!
大神帮我看看:我需要把数据库中的城市名字读取出来然后显示再web上面。我试过了统一编码格式,数据库是Gbk,项目定义为gbk,把xml文件改称gbk,把jsp改称gbk,还是不能够读出。下面是代码: 在action中定义为: public String mainFrame() throws Exception { List<CityMapInfo> cityMapInfoList = new ArrayList<CityMapInfo>(); List<TOrgInfo> orgInfoTempList = service.selectOrgInfo(); TOrgInfo nation = orgInfoTempList.get(0); CityMapInfo quanguo = new CityMapInfo(); quanguo.setCityName(nation.getFOrgName()); quanguo.setLat(Float.parseFloat(nation.getFOrgLatitude())); quanguo.setLng(Float.parseFloat(nation.getFOrgLongitude())); for (int i = 1 ; i < orgInfoTempList.size(); i++) { TOrgInfo oneTOrgInfo = orgInfoTempList.get(i); CityMapInfo oneCityMapInfo = new CityMapInfo(); oneCityMapInfo.setCityName(oneTOrgInfo.getFOrgName()); oneCityMapInfo.setColor("FF0000"); oneCityMapInfo.setLat(Float.parseFloat(oneTOrgInfo.getFOrgLatitude())); oneCityMapInfo.setLng(Float.parseFloat(oneTOrgInfo.getFOrgLongitude())); oneCityMapInfo.setRadus(300); cityMapInfoList.add(oneCityMapInfo); } System.out.print("cityMapInfoList*****************"+cityMapInfoList.size()); HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("quanguo", quanguo); request.setAttribute("cityMapInfoList", cityMapInfoList); return SUCCESS; } 在bean层定义: 这里还有一个构造函数。 public String getFOrgName() { return this.FOrgName; } public void setFOrgName(String FOrgName) { this.FOrgName = FOrgName; }
xtbda 2013-12-06
  • 打赏
  • 举报
回复
引用 3 楼 u010684923 的回复:
编码问题就这么难吗?显示不正常说明有地方的编码格式不一致嘛, LZ代码也不发一个,去哪帮你分析问题。 把容器(tomcat)的编码格式改成和数据库一样的试试,不要问怎么改,要是问我也不回答,自己百度去。
大神帮我看看:我需要把数据库中的城市名字读取出来然后显示再web上面。我试过了统一编码格式,数据库是Gbk,项目定义为gbk,把xml文件改称gbk,把jsp改称gbk,还是不能够读出。下面是代码: 在action中定义为: public String mainFrame() throws Exception { List<CityMapInfo> cityMapInfoList = new ArrayList<CityMapInfo>(); List<TOrgInfo> orgInfoTempList = service.selectOrgInfo(); TOrgInfo nation = orgInfoTempList.get(0); CityMapInfo quanguo = new CityMapInfo(); quanguo.setCityName(nation.getFOrgName()); quanguo.setLat(Float.parseFloat(nation.getFOrgLatitude())); quanguo.setLng(Float.parseFloat(nation.getFOrgLongitude())); for (int i = 1 ; i < orgInfoTempList.size(); i++) { TOrgInfo oneTOrgInfo = orgInfoTempList.get(i); CityMapInfo oneCityMapInfo = new CityMapInfo(); oneCityMapInfo.setCityName(oneTOrgInfo.getFOrgName()); oneCityMapInfo.setColor("FF0000"); oneCityMapInfo.setLat(Float.parseFloat(oneTOrgInfo.getFOrgLatitude())); oneCityMapInfo.setLng(Float.parseFloat(oneTOrgInfo.getFOrgLongitude())); oneCityMapInfo.setRadus(300); cityMapInfoList.add(oneCityMapInfo); } System.out.print("cityMapInfoList*****************"+cityMapInfoList.size()); HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("quanguo", quanguo); request.setAttribute("cityMapInfoList", cityMapInfoList); return SUCCESS; } 在bean层定义: 这里还有一个构造函数。 public String getFOrgName() { return this.FOrgName; } public void setFOrgName(String FOrgName) { this.FOrgName = FOrgName; }
xtbda 2013-12-06
  • 打赏
  • 举报
回复
引用 1 楼 huxiweng 的回复:
跟字段类型没关系。主要原因是编码格式不一致。你看下数据库编码,和你项目的编码
大神帮我看看:我需要把数据库中的城市名字读取出来然后显示再web上面。我试过了统一编码格式,数据库是Gbk,项目定义为gbk,把xml文件改称gbk,把jsp改称gbk,还是不能够读出。下面是代码: 在action中定义为: public String mainFrame() throws Exception { List<CityMapInfo> cityMapInfoList = new ArrayList<CityMapInfo>(); List<TOrgInfo> orgInfoTempList = service.selectOrgInfo(); TOrgInfo nation = orgInfoTempList.get(0); CityMapInfo quanguo = new CityMapInfo(); quanguo.setCityName(nation.getFOrgName()); quanguo.setLat(Float.parseFloat(nation.getFOrgLatitude())); quanguo.setLng(Float.parseFloat(nation.getFOrgLongitude())); for (int i = 1 ; i < orgInfoTempList.size(); i++) { TOrgInfo oneTOrgInfo = orgInfoTempList.get(i); CityMapInfo oneCityMapInfo = new CityMapInfo(); oneCityMapInfo.setCityName(oneTOrgInfo.getFOrgName()); oneCityMapInfo.setColor("FF0000"); oneCityMapInfo.setLat(Float.parseFloat(oneTOrgInfo.getFOrgLatitude())); oneCityMapInfo.setLng(Float.parseFloat(oneTOrgInfo.getFOrgLongitude())); oneCityMapInfo.setRadus(300); cityMapInfoList.add(oneCityMapInfo); } System.out.print("cityMapInfoList*****************"+cityMapInfoList.size()); HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("quanguo", quanguo); request.setAttribute("cityMapInfoList", cityMapInfoList); return SUCCESS; } 在bean层定义: 这里还有一个构造函数。 public String getFOrgName() { return this.FOrgName; } public void setFOrgName(String FOrgName) { this.FOrgName = FOrgName; }

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧