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");
问题解决。