JSPCN主页 | JSP空间 | 网站制作 | JSP下载 | JSP论坛 | JSP教程 | 关于JSPCN | 联系我们
JSP虚拟主机,jsp空间,java空间,java虚拟空间,详细请点击进入
做最专业的JSP中文网站 当前位置首页--JAVA技术--J2EE  
文章搜索:
关键字 标题
  
JSP中文网内容管理系统(JCMS)
JSP虚拟主机
网络笔记本
网摘,图片,笔记收藏
虚拟服务器

JSPCN文章目录分类
JSP配置[219]JSP基础[136]
中文问题[69]上传问题[27]
JAVABEAN[46]数据库[212]
文件操作[126]图片声音[17]
JSP其他[57]时间相关[16]
JAVAMAIL[72]STRUTS[144]
开发工具[28]教程系列[157]
JSP实例[89]
JAVA基础[421]APPLET[78]
JAVA网络[179]Applica[115]
Servlet[98]XML[163]
J2ME[257]J2EE[374]
考试相关[63]JAVA线程[90]
EJB[261]Swing[26]
Java API[141]声音图片[28]
异常处理[33]JAVA实例[290]
JAVA类[139]SUN[89]
Hibernate[6]JMX[8]
Spring[34]
本版推荐文章 
本版热点文章 
相关文章链接 
 
基于J2EE的开发的一些经验
作者:     文章来源:
访问次数:172次     加入时间:2006年11月04日
基于J2EE的开发的一些经验
[ 作者: | 来源:CSDN 文档| 点击数:54] 

1.CMP的findByPrimaryKey有时将返回NULL:
给findByPrimaryKey送了一个数据库中不存在的键值,就抛出了异常
如果参数是数据库中存在的一个关键字,则是返回对应的primarykey
2.对于BMP,必须远程的调用一个create方法,否则只能被使用一次,就会出现JDBC的问题。这个create()如果不是用返回对象的话可以任意写一个返回primayKey值即可
3.response.setContentType("text/xml;charset=UTF-8");
PrintWriter out = response.getWriter();
但需要指定编码时,这两条语句必须是这个顺序,否则就会出错。
因为response.getWriter()的默认编码是ISO-5988-1,它是不能被转码成GB2312,UTF-8.
而且这种编码时不支持中文的。                                                                                                                                   4.对于jsp页面,通常是不需要在web.xml文件中配置,就可以根据链接,就可以访问。只有对于于特定的访问就需要
配置到web.xml文件中,以控制页面的走向。
5.对于错误处理页面,只要在web.xml文件中设置如下:
        <error-page>
  <error-code>404</error-code>
  <location>/error.jsp</location>
 </error-page>
即当页面访问出错时,就会显示该页面。对于请求所出的错误是没有办法的!
6.对于jsp和servlet的显示和处理,经常可能出现乱码。
 通常
   对于jsp,有<%@ page contentType="text/html;charset=gb2312"%>
   对于servlet,有Response.setContentType("text/html;charset=gb2312");
   一般对于显示,中文上面是保险的办法,其他的一些编码会经常出乱码
7.有时还需要对request的内容进行编码。如
   request.setCharacterEncoding("GBK");
8.在servlet中从服务器的数据库中读出文件(上传可以用fileupload组件smartupload组件)的办法.例:
 String sql="SELECT FileSize,FileStore FROM ResourseStore where MagazineNumber='"+MIDValue+"'";
           stmt=con.prepareStatement(sql);
             ResultSet rs=stmt.executeQuery();
             if(rs.next()){
               int len=rs.getInt("FileSize");
               InputStream  in = rs.getBinaryStream("FileStore");//对于ResultSet而言,获取值得顺序同select中返回值的顺序,否则数据库会出异常。
               byte b[]=new byte[len];
      while(true)
      {
       int readlen=in.read(b);
       if(readlen==-1)
       {
          break;
      }
      }
               response.setContentType("application/x-msdownload");
               ServletOutputStream op = response.getOutputStream();
               op.write(b,0,b.length);
               op.flush();
               op.close();

如果数据库支持clob或clob时(sql service不支持读取,也不支持URL),可以采用别的办法解决问题。如:读取二进制(如上),读入字符串,然后通过类型转换即可!

Copyright © 2002-2005 JSPCN.net. All rights reserved.
JSP中文网    备案序号:蜀ICP备05001583号
成都恒海科技发展有限公司    成都市一环路南二段6号新瑞楼三楼8号