首先把你获取的页面的数据用DB的编码方式重新编码一下再存入DB.
如String tstna=request.getParameter("shijuanming")
改成String tstna=request.getParameter("shijuanming")
tstna = new String(tstna.getBytes("ISO-8859-1", "GB2312"))
后面的一个编码方式,如果DB是GB2312,那就是这个,如果不是,改成DB相应的编码方式就行了.
当然,把mysql 和 jsp上编码格式设置一致即可, 一般默认mysql的编码格式是UTF-8, 建议在jsp中也设置为UTF-8, 如果你不想这么做的话要改数据库格式, 也就是说你所有建立的表都要重新建立成GBK编码。
首先呢,后台可以设置编码格式response.setCharacterEncoding("utf-8")jsp页面头部可以改为utf8
另外就是数据库默认保存的编码形式有的也不是utf8,gbk啥得,可以再图形界面管理工具设置,或者去数据库配置文件设置,像mysql是可以设置的
jsp读取数据乱码原因如下:1、JSP连接数据库语句指定的编码不正确
解决方案:在JSP连接数据库的语句中,带上useUnicode=true&characterEncoding=UTF-8&autoReconnect=true
2、JSP页面没有指定数据提交的编码,就会造成乱码:
解决方案:这种乱码的情况,只需在页面开头加上request.setCharacterEncoding("GBK")指定提交的即可。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)