首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 其他教程 > 其他相关 >

JavaBean编码有关问题

2012-11-10 
JavaBean编码问题??????做第一个javabean就遇到了一个棘手的编码问题,哈哈,终于在大家的共同研究之下吧问

JavaBean编码问题

??????做第一个javabean就遇到了一个棘手的编码问题,哈哈,终于在大家的共同研究之下吧问题给解决了,这里做个小结,以便以后借鉴~!!

??? 首先来看看我这个javabean购物车所牵涉到得文件:

?? carts.html

??

?

? 注意,这里最上面加了一个meta用来设置编码格式

?

? 然后 carts1.html

?

?

? 这个carts1与carts不同的是没没有那个编码设置

?

? 再来看carts.jsp页面:

?

??? 注意,include操作使用的是carts1.html而不是carst.html如果include使用carts.html就会出现编码问题.

?

?? 下面来看我的javabean

??

package com.mycompany.bean;import javax.servlet.http.*;import java.io.UnsupportedEncodingException;import java.util.Vector;import java.util.Enumeration;public class MyCarts {   Vector v =new Vector();   String submit=null;   String item=null;      private void addItem(String name)   {   if(name!=null)   {   v.addElement(name);   }   }   private void deleteItem(String name)   {   if(name!=null)   {   v.removeElement(name);   }   }      public void setItem(String s)   {   this.item=s;   }   public void setSubmit(String s)   {   this.submit=s;   }      public String[] GetItems()   {   //创建一个数组   String[] str =new String[v.size()];   v.copyInto(str);   return str;   }      //处理用户的请求   public void processRequest(HttpServletRequest request)   {   //表示用户回车添加商品   if(submit==null)   {   addItem(item);   }   if(submit.equals("add"))   {   addItem(item);   }   if(submit.equals("remove"))   {   deleteItem(item);   }   reset();   }   //当一次请求结束时,清空变量   private void reset()   {   submit=null;   item=null;   }   }

?? 没有特殊的地方,这里就不做解释了!

?

?? 通过这个实例,我想说明几点:

?一:首先我们必须要把各个页面的编码设置成统一格式,jsp一般都是utf-8,那又在那里设置呢?答案是在你的.jsp页面或.html右键单击,选择"References",如果你在jsp页面上单击的就选择"java",如果你在html页面上单击就选择"html",选择后你就会看到一个编码下拉框,这时你选择第一个(utf-8) 就可以了,所有向关联的页面都要这个统一设置哈!

?二:当我这样设置后,还是解决不了问题,然后我就在.jsp页面的<body> 下方加入如下代码:

???? ?<%
????? ??request.setCharacterEncoding("UTF-8");
??????? response.setCharacterEncoding("UTF-8");
??? ? %>

??三:到此,问题解决了90%,还有一个问题没有解决,这就是为什么我要做两个html页面分别是carts.html 和 carts1.html 。其中,carts.html是启动显示页面,而carts1.html是用来嵌入carst.jsp页面的,因为这个页面的顶上没有设置编码,如果设置了编码又被嵌入到carts.jsp就会出现乱码了,因为carts.jsp被设置了两次编码了,我不知道是ub是这个原因,但我把carts1.html嵌入后就不会有乱码出现了。

??????? 还有一个问题,就是我在carts.html中加入了一个meta设置编码格式,这个也是必须加的,如果不加传递到javabean里的内容就不是utf-8编码了,当然显示出来就会是乱码了哈~!!!

????? 所能总结的就是这么多了~~如果有没有提到的还希望大家提出!!!

?

?

1 楼 xjlnjut730 2009-05-18   没有总结一下为什么会这样...

热点排行