jsp页面获取中文乱码怎么解决方法

如题所述

1、在jsp页中加入一条语句:
<%@ page contentType="text/html;charset=gb2312" %>中文显示就正常了。

2、对于从网页中的文本框通过String parameter = request.getParameter(“parameter”);方式获得的字符串,均是8859_1的编码,
如果想把它显示在网页上就必须得用parameter = new String(parameter.getBytes(“8859_1”),”gb2312”)进行转换,windows和linux这两种系统都是一样的。
有一个简单方法,就是在 getParameter() 方法获取参数之前,使用request.setCharacterEncoding("GB2312");,将提交的信息转化为 GB2312 编码。

3、但是对于将数据写入数据库的问题,采取的方式就不同了:
windows下,必须要采用该字符串转换再插入数据库,而linux下就不需要,而是直接把8859_1编码的字符插入。
如果从数据库中读出的数据,对于windows因为在插入时已经做了转换,所以读出时已经是gb2312的,当把它显示在网页上时,不需要做编码转换,而 linux上的mysql中的数据是8859_1的所以要做编码的转换。

4、 如果你给某个字符串变量赋予一个中文字符串的值,那么在你取出他时,在网页上的显示是不需要做字符转换的,
但是如果你要在linux下做字符的比较,则还需要把字符做parameter = new String(parameter.getBytes(“gb2312”),”8859_1”)的转换。

5、长江电力网站解决中文问题的方法是:
1)在catalina.sh文件中的相关位置添加下面一行
-Dfile.encoding=GBK \
2)在每个jsp文件的最前面添加下面两行
<%@ page contentType="text/html; charset=GBK" %>
<%request.setCharacterEncoding("GBK");%>
温馨提示:内容为网友见解,仅供参考
无其他回答

如何解决网页中文乱码问题
1. JSP页面显示中文乱码问题通常是由于未在JSP文件中指定字符集编码所致。解决方法是在JSP页面的顶部添加以下代码来指定字符集为UTF-8:```jsp ```2. 数据库中文乱码问题可能会导致插入或查询数据库时中文数据出现乱码。解决方法包括在数据库连接字符串中指定字符集为UTF-8,以及在JSP页面中设置响应和...

“JSP页面提交后,提交的post中文是正常的,但是到达服务器上,中文就乱...
1.在jsp 的java代码执行之前写入在 <% response.setContentType("text\/html;charset=UTF-8")%> 一定要是之前,因为设了这个下面代码才开始生效。可以写在jsp开头。2.在在Servlet中service方法开始部分写入 response.setContentType("text\/html;charset=UTF-8")3.在过滤器中写入在Servlet中 response...

如何处理get\/post提交的中文乱码问题
只要涉及中文的地方全部是乱码,解决办法:在数据库的数据库URL中加上useUnicode=true&characterEncoding=GBK就OK了。四、数据库的显示乱码 在mysql4.1.0中,varchar类型,text类型就会出现中文乱码,对于varchar类型把它设为binary属性就可以解决中文问题,对于text类型就要用一个编码转换类来处理,实现如下:...

JSP页面中文乱码问题解决方法
1.新建两个JSP页面 2.在c.jsp中新建一个表单 3.在d.jsp中接收这个值 4.运行c.jsp 5.输入带中文的参数,点击提交 6.发现接收过来的中文是乱码,英文正常 解释下:JSP默认参数在传输过程中使用的编码为ISO-8859-1 而两个页面使用的都是UTF-8 的编码 7.在d.jsp中新增如下代码 8.再次重复上边...

jsp页面获取中文乱码怎么解决方法
1、在jsp页中加入一条语句:<%@ page contentType="text\/html;charset=gb2312" %>中文显示就正常了。2、对于从网页中的文本框通过String parameter = request.getParameter(“parameter”);方式获得的字符串,均是8859_1的编码,如果想把它显示在网页上就必须得用parameter = new String(parameter....

JSP中文乱码问题如何解决?
在Java文件中,若包含中文,且编译成class文件时使用的编码方式与源文件编码不一致,则会产生乱码。解决方法是在编写Java文件时尽量避免中文(注释部分例外),必要时手动指定编码参数(如'-ecoding GBK'或'-ecoding gb2312')进行编译;对于JSP文件,在文件头加入相应的编码声明可解决此类乱码问题。本文...

jsp中处理中文乱码的解决方案有哪些
1、Tomcat 的 server.xml 文件,设置服务器端口工作方式 2、Servlet 和 JavaBean 对字符串字符集处理的统一 3、JSP页面的字符集统一 完成这三点统一,中文想乱码都难,如果使用MySQL的话,数据表也需要做UTF-8统一。修改Tomcat的server.xml文件,该文件位于 tomcat\/conf,红色部分为添加部分,也就是当前...

怎么解决jsp页面get传值中文乱码问题
在jsp页面中,设置页面的存储编码和页面输出时的编码:<%@ page language="java" contentType="text\/html; charset=utf-8"pageEncoding="utf-8"%> 这样,就统一了编码为utf-8。这种方式在post提交表单中含有中文时没有问题。但是在用get提交时,如果含有中文,就会出现类似于“? ? ?”的乱码...

JSP乱码一般有什么解决办法?
1) JSP页面内输出中文时出现乱码 解决方案在JSP文件中使用page命令指定响应结果的MIME类型,如<%@ page language="java" contentType="text\/html;charset=gb2312" %> 2)表单提交乱码 表单提交时(post和Get方法),使用request.getParameter方法得到乱码,这是因为tomcat处理提交的参数时默认的是iso-8859...

JSP 中传递中文的问题
1) JSP页面中文乱码,这种情况比较好处理,在页面的page指令中加上如下一项就行 <%@ page contentType=”text\/html;charset=UTF-8” %> 2) JSP页面采用表单提交时,提交的数据中包含中文,并且提交方式为post这时我们获取表单数据后,展示到其它页面时会出现乱码,解决方案是在获取请求中的参数前,...

相似回答