JAVA WEB开发中处理乱码汇总

  在开发中难免会遇到中文显示乱码的问题,乱码问题是一个很棘手的问题,常常令程序员抓狂。现在把我使用的几种解决乱码的方案和大家共享!

  一、表单提交的乱码处理

  表单提交分为GET和POST两种提交方式。两种方式的乱码解决又不一样,用POST提交只需要在接受的时候加上
request.setCharacterEncoding(“utf-8”);而GET方法处理应该将接收过来的值打碎成ISO-8859-1编码的,
然后再组装成UTF-8的,new String(request.getParameter(param).getBytes(“iso8859-1”),”UTF-8”);

  二、过滤器处理乱码问题

  如果每次接收都像上面那样去处理的话肯定是太麻烦了,用过滤器来处理请求的乱码问题很方便,只需要写一个过滤器,就可以过滤所有请求页面的乱码问题了。至于如何用过滤器处理乱码请参考《用过滤器来解决JSP中文乱码问题》。不过值得注意的是,如果使用Struts的话,在web.xml里面处理编码的过滤器必须在struts过滤器前面注册,否则所有页面都不会经过过滤器。

  三、ajax请求的乱码问题

  如果使用ajax出现了乱码问题这样解决:前端ajax函数的请求的url里面中文参数用两个encodeURI()函数处理,var url = ”user.do?p=checkUser&name=” + encodeURI(encodeURI(username.value));而服务器端则用 URLDecoder.decode()函数去接收,string userName = URLDecoder.decode(request.getParameter(“name”),”utf-8”);   这样就能够解决ajax请求中乱码的问题了。

  四、链接请求中乱码问题(IE6)

 
 使用链接请求传递中文参数时在IE6里面会出现乱码,解决方法如下:使用encodeURI(param)对中文参数处理一下就行了,如
location =
“users.do?p=login&&username=”+encodeURI(username)+”&password=”+encodeURI(password);

  待续………

时间: 2024-12-31 02:18:29

JAVA WEB开发中处理乱码汇总的相关文章

Java web开发中要是用jdbc连接access数据库,连接url怎么写相对位置

问题描述 Java web开发中要是用jdbc连接access数据库,连接url怎么写相对位置 Java web开发中要是用jdbc连接access数据库,连接url怎么写相对位置,注意这里是jdbc方法连接 而不是jdbc-odbc 例如access数据库就在项目中(project文件夹下) 代码为: try { // 加载jdbc - odbc驱动 Class.forName("com.hxtt.sql.access.AccessDriver"); // 根据url创建连接实例 a

java web 开发中使用到的 json

问题描述 java web 开发中使用到的 json 使用json 在web 开发中有什么优点? 假如有一个分页 主体部分是商品(div),之下是页码,点击页码切换div 中的内容: 这里采用jQuery 的ajax 方法 加载 servlet 的映射地址,通过传递给servlet不同的参数来查询数据,这个 路径 有 结构完整的页面: 这样做有问题吗? 如果使用json 的话应该怎么设计?难道是一次查询大量数据 生成json 放在html 某个标签的某个属性里,通过js 解析 来切换 显示? 解

就想问一句,大家spark这个东西在实际的java web开发中怎么应用,怎么用myeclipse进行整合开发。。。。

问题描述 就想问一句,大家spark这个东西在实际的javaweb开发中怎么应用,怎么用myeclipse进行整合开发.... 解决方案 解决方案二:spark计算得出结果,JavaWeb获取处理这个结果解决方案三:引用1楼wulinshishen的回复: spark计算得出结果,JavaWeb获取处理这个结果 作为新手的我也想知道这个问题..尽管我可以在spark-shell或者pyspark里执行命令,但要把结果导出来还是一个很繁琐的过程..有没有更方便一点的接口?能详细介绍一下吗?或者比较

java web 开发中hibernate延迟加载如何应用

问题描述 我想请教一下hibernate的延迟加载在webapp应用中能应用在哪些地方.web应用中页面取数据都是一次加载完成.有操作的话都是另外一次请求,如何应用延迟加载. 问题补充:延迟加载的概念我是了解的.我的意思是如果在页面上先显示出来class,等我需要看这个class里面有多少user的时候再使用延迟加载,那该如何实现.因为在页面上的任何操作都会触发action > service > dao,其实就是如何跨action实现延迟加载.我能想到的就是把po存在session里,不过这

在java web开发中,怎样获取上传视频文件时长?

问题描述 Struts2+Spring+Hibernate项目怎样来获得上传视频文件的时长?数据库的字段应该设置成time类型的还是timestamp类型?

利用TOMCAT解决WEB开发中中文乱码的问题

很容易的一个方法, 不需要去更改自己的应用程序.找到   TOMCAT/conf/server.xml  <Connector port="8080" protocol="HTTP/1.1"                connectionTimeout="20000"                URIEncoding="GBK" <!-- 添加这个就可以了-->               redir

javaweb-Java Web开发中 application使用的问题

问题描述 Java Web开发中 application使用的问题 老师要我们用Myeclipse做一个网页聊天的东西,大概就是在网页中有两个文本框,一个大的文本框显示聊天的记录,下面一个小的文本框用来输入文字,旁边有一个button,点一下就可以发送了.求教,还有代码...谢谢!

Web 开发中 Ajax 的 Session 超时处理

在 Java Web 开发中,当session超时的情况下,普通页面的跳转好处理.关于Ajax的请求超时处理,就需要特殊处理下了. 先写一个统一的过滤器,或者拦截器,针对Ajax请求进行过滤处理,下面示例以Filter为例: public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServ

java Web项目中什么场景中会用到java多线程?

问:能不能简单描述一下你在java web开发中需要用到多线程编程的场景? 对多线程有些了解,但是不太清楚具体的应用场景,能简单说一下你遇到的多线程编程的场景吗? 回答一: 最典型的如:1.用户注册完成送大礼包/积分之类,且积分等也是另一个系统并比较耗时:且这类任务即使失败也不是特别重要的.2.后台线程:比如定期执行一些特殊任务,如定期更新配置文件,任务调度(如quartz),一些监控用于定期信息采集等. 回答二: 最典型的应用比如tomcat,tomcat内部采用的就是多线程,上百个客户端访问