Fork me on Gitee

jsp+servlet中文乱码问题

jsp+servlet中文乱码问题

servlet想要获得前台传来的值

String strName=new String(request.getParameter("name").getBytes("ISO-8859-1"),"UTF-8");
String strPass=new String(request.getParameter("secret").getBytes("ISO-8859-1"),"UTF-8");

jsp想要获得servlet传来的值

首先判断从数据库中取出时是不是乱码

while(rs.next()){
//判断从数据库取值是否出现乱码
System.out.println(rs.getString("name"));

String name = rs.getString("name");
//判断赋值之后是否出现乱码
System.out.println(name);

String secret = rs.getString("secret");
String sex = rs.getString("sex");
String datatime = rs.getString("birth");
String addr = rs.getString("xueyuan");
String nianji = rs.getString("nianji");
String phone= rs.getString("phone");
String email = rs.getString("email");
String zhiwu = rs.getString("zhiwu");
People people= new People (name, secret,sex,datatime,nianji,addr,phone,email,zhiwu);
SearchList.add(people);
}

查看页面是否进行了编码的统一,都设置成“UTF-8”或者“GB2312”,如果没有效果那就是servlet中response的问题了。
在servlet顶部中加入

//设置响应内容类型
//把这句加上,且重启Tomcat即可,页面刷新即可。
response.setContentType("text/html");
response.setCharacterEncoding("utf-8");
问题解决。

图片

posted @ 2018-03-09 09:05  明叶师兄。  阅读(408)  评论(0)    收藏  举报