JAVA Web 中文乱码问题
本人初学,如有问题欢迎指正
教材《Java Web程序设计(第3版)》主编:郭克华,第8章 JSP内置对象(2)P129-P131
所示代码 :
java
//获得书名
String book=request.getParameter("book");
if(book!=null){
book=new String(book.getBytes("iso8859-1"));
//将book加进去
books.add(book);
}
在实际运行中出现中文乱码问题!
原因 :将中文提交给服务器时,服务器将其认成ISO-8859-1编码!
方法一 :在tomcat上,使用的不是在jsp页面声明的编码方式(我用的 UTF-8 ),而是使用tomcat的默认编码方式 ISO-8859-1 ,直接修改tomcat配置文 件,找到server.xml,修改相应的端口的Connector的属性:URIEncoding="UTF-8",如下所示:
java
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" URIEncoding="UTF-8" />
方法二 :将其转换成UTF-8格式,方法如下:
java
book=new String(book.getBytes("iso8859-1"),"UTF-8");
方法三 :直接修改request的编码。用户可以将request的编码修改为支持中文的编码
java
//获得书名
request.setCharacterEncoding("UTF-8");//直接修改request的编码
String book=request.getParameter("book");
if(book!=null){
//将book加进去
books.add(book);
}
附 :
```jsp <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<% //向session中放入一个集合对象 //ArrayList books=new ArrayList(); ArrayList books=(ArrayList)session.getAttribute("books"); if(books==null){ books=new ArrayList(); session.setAttribute("books",books); } //获得书名 request.setCharacterEncoding("UTF-8"); String book=request.getParameter("book"); if(book!=null){ //book=new String(book.getBytes("iso8859-1"),"UTF-8"); //将book加进去 books.add(book); } %> 购物车中的内容是:
<% //遍历books for(int i=0;i
```
参考文献
- 基于.NET框架的Web数据库访问技术的研究与实现(武汉理工大学·希凡)
- 基于ASP.NET的杂草识别与治理咨询网站的构建(福建农林大学·陈敦举)
- 基于.NET框架的Web数据库访问技术的研究与实现(武汉理工大学·希凡)
- 基于需求语义描述的多平台统一框架的研究与实现(中国海洋大学·辛灿灿)
- 基于J2EE的学生网上考试系统的设计与实现(华南理工大学·李占新)
- 基于需求语义描述的多平台统一框架的研究与实现(中国海洋大学·辛灿灿)
- 基于J2EE的手机综合网站的设计与实现(吉林大学·宋微)
- 基于Java的在线考试系统(电子科技大学·卓先德)
- 基于.NET框架的Web数据库访问技术的研究与实现(武汉理工大学·希凡)
- 基于J2EE的手机综合网站的设计与实现(吉林大学·宋微)
- 基于J2EE的学生网上考试系统的设计与实现(山东大学·雷怡然)
- 基于J2EE的手机综合网站的设计与实现(吉林大学·宋微)
- 基于J2EE的学生网上考试系统的设计与实现(山东大学·雷怡然)
- 基于J2EE的WEB开发框架的研究与应用(汕头大学·李浩)
- 基于.NET下Web服务的信息查询系统的研究与设计(合肥工业大学·张静)
本文内容包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主题。发布者:毕设向导 ,原文地址:https://m.bishedaima.com/yuanma/35418.html