Java和jsp编程中应该注意的问题

2016-02-19 19:28 5 1 收藏

今天图老师小编要跟大家分享Java和jsp编程中应该注意的问题,精心挑选的过程简单易学,喜欢的朋友一起来学习吧!

【 tulaoshi.com - Web开发 】

  1. 对应String类型的对象使用println()方法时,如果对象为null,将打印null而不是引发NullPointerException,由此引用的问题是容易造成错觉,对于以后对字符串的操作容易引起问题。
  2. 引发NullPointerException异常,主要原因是没有对对象的存在性进行验证,在jsp编程中经常出现:if (request.getParameter(“username”).equals(“xxx”))、out.println(session.getAttribute(“record”))等。解决这个问题的方法是在使用前进行判空比较:if (request.getParameter(“username”)!=null) {if if (request.getParameter(“username”).equals(“xxx”))…}。
  3. 引发NumberFormatException异常:主要原因是将用户提交的内容转换为整数或者浮点数时用户输入了其它非法字符。处理的主要方式是在需要进行转换的地方使用try/catch块捕获此异常然后提示用户输入合法数据。
  4. 引发StringIndexOutOfBoundsException异常:主要原因是使用String的substring()、charAt()等方法,而字符串的长度不够,就会引发此异常;在字符串为null时也会引发NullPointerException。解决的方法是判空,判断长度或者转换为字节数组。考虑到这些操作很多,可以将之封装到javabean中。
  5. 引发NoClassDefFoundError错误,主要原因是类路径或者类文件放置错误,类文件的放置要符合服务器的要求。
  6. 引发java.lang.Error错误,主要原因是对系统所访问外部资源,未执行关闭操作,导致外部资源大量浪费,最终可能导致系统无法正常运行;对系统所访问的外部资源关闭次数太多,外部系统无法正常处理;所系统访问的外部资源出现异常情况。解决的方法是:访问外部资源前,首先检查该资源(如数据库)是否可正常连接或操作;访问外部资源时,如果进行了连接,一定进行关闭操作,并仅进行一次关闭操作;尽量在同一操作中共享外部资源,以减少该操作对资源的消费,提高程序的执行效率。

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

  http://blog.csdn.net/kiss0931/archive/2005/02/22/297547.aspx

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/webkaifa/)

来源:http://www.tulaoshi.com/n/20160219/1621086.html

延伸阅读
你时常被客户抱怨JSP页面响应速度很慢吗?你想过当客户访问次数剧增时,你的WEB应用能承受日益增加的访问量吗?本文讲述了调整JSP和servlet的一些非常实用的方法,它可使你的servlet和JSP页面响应更快,扩展性更强。 而且在用户数增加的情况下,系统负载会呈现出平滑上长的趋势。在本文中,我将通过一些实际例子和配置方法使得你的应用程序的...
  JSP编译器指引与指令元件有五种型态.在JSP 1.0之后,大部分的JSP是包含在以% 作为开始%作为结束的单一标签里.新的 JSP 1.1规格已经发表了,它同时也与XML相容. 五种JSP的编译器指引如下所示: 1 编译器指引 %@ 编译器指引 % 2 预定义 %! 预定义 % 3 运算式 %= 运算式 % 4 程序代码 % 程序代码 % 5 注解 %-- 注解 --% 下面我们分析一...
标签: 设计
在Logo设计中使用渐变,似乎是个两极分化的问题:有人把它用的很复杂,让设计看起来很花哨;有人却能运用非常简单的渐变,让设计更好看。 微软和百事Logo进化史 Logo设计中的扁平化正当时,扁平化不等于抛弃渐变。无论你喜欢还是不喜欢,认为渐变是好还是坏,在这里,我们进行了一系列对比,试图陈述Logo设计中使用渐变的种种问题。 应...
Vector 类提供了实现可增长数组的功能,随着更多元素加入其中,数组变的更大。在删除一些元素之后,数组变小。 Vector 有三个构造函数: public Vector(int initialCapacity,int capacityIncrement) !-- frame contents -- !-- /frame contents -- public Vector(int initialCapacity) public ...
在Logo设计中使用渐变,似乎是个两极分化的问题:有人把它用的很复杂,让设计看起来很花哨;有人却能运用非常简单的渐变,让设计更好看。 微软和百事logo进化史 Logo设计中的扁平化正当时,扁平化不等于抛弃渐变。无论你喜欢还是不喜欢,认为渐变是好还是坏,在这里,我们进行了一系列对比,试图陈述Logo设计中使用渐变的种种问题。

经验教程

306

收藏

73
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部