分类:2008-06-04 12:47 467人阅读 评论(0) 收藏 举报 linuxjava测试 昨天,有同事A对同事B写的程序进行测试时,出现错误,看控制台信息,发现抛出了空指针异常. 调查结果显示:当flag在配置文件中没有对应属性项时,这种隐患写法flag.equals("true")会抛出空指针错误. 解决办法:使用规范的写法"true".equals(flag),这样写的话,就算flag为空的话,也不会出现空指针异常. 顺便提一下equalsIgnor…
正文 bug描述 当查找已修改的与未修改的做比较的时候,之前为null的值调用equals方法与其他值做比较的时候,会导致抛出空指针异常 知识补充 关于null,你不得不知道的几件事: 1.null是Java中的关键字,像public.static.final.它是大小写敏感的,你不能将null写成Null或NULL,编译器将不能识别它们然后报错. 2.就像每种原始类型都有默认值一样,如int默认值为0,boolean的默认值为false,null是任何引用类型的默认值,不严格的说是所有obje…
友情提醒:eclipse创建servlet不会帮你同步创建一个web.xml配置文件:所以建议使用MyEclipse! 1.View层(jsp) <form action="javaweb/Logservlet" method="post"> <label>用户名:</label><input type="text" name="username" /><br> &l…
前言 最近在开发过程中使用了大量的json作为前后端数据交换的方式,由于之前没有对json做过系统的学习,所有在使用过程中查阅了大量的文档与资料,这里主要记录了我在开发后对json以及fastjson使用的总结 JSON 介绍 JSON(javaScript Object Notation)是一种轻量级的数据交换格式.主要采用键值对({"name": "json"})的方式来保存和表示数据.JSON是JS对象的字符串表示法,它使用文本表示一个JS对象的信息,本质上是…
Servlet基础 1.手工编写第一个Servlet ⑴继承HttpServlet ⑵重写doGet()或者doPost()方法 ⑶在web.xml中注册Servlet 2.使用eclipse编写第一个Servlet ⑴src->new->Servlet ⑵重写doGet()或者doPost()方法 ⑶部署运行 3.web.xml文档配置 <servlet> <servlet-name>HelloServlet</servlet-name>//servlet…
Ajax请求查询数据之后,返回的是map类型, resultMap.put("flag", flag); 在接收到数据之后判断时,转换出现异常,导致页面点击按钮之后,页面没有反应,http请求报404异常,一个风马牛不相及的请求响应.后台也没有报错. 检查后台代码发现,处理判断时出现异常, resultMap.get("flag") != null && ((String)resultMap.get("flag")).equals…
选择排序,复杂度O(n²) package com.example.demo; import org.junit.Test; /** * 选择排序 * @author zhzh.yin * */ public class HTest { @Test public void testMethod(){ Integer [] numList = {1,2,2,2,1,4,5,2,5,3,9,6}; for(int i=0;i<numList.length-1;i++){ int max = numL…
JAVA之旅(十四)--静态同步函数的锁是class对象,多线程的单例设计模式,死锁,线程中的通讯以及通讯所带来的安全隐患,等待唤醒机制 JAVA之旅,一路有你,加油! 一.静态同步函数的锁是class对象 我们在上节验证了同步函数的锁是this,但是对于静态同步函数,你又知道多少呢? 我们做一个这样的小实验,我们给show方法加上static关键字去修饰 private static synchronized void show() { if (tick > 0) { try { Thread…
我就不废话那么多,直接上代码: package sf.com.mainTest; public class Test { public static void main(String[] args) { System.out.println(new Test().isBool(null)); } public boolean isBool(String a){ return a.equals("true"); // return "null".equals(a);…
今天查看别人写的代码时,发现这样一句代码,顿时来了兴趣. 需要注意setAccessible 并不是在Field中的,而是在AccessibleObject中. 下面是AccessibleObject的解释: 意思是 AccessibleObject  类是 Field Method Constructor 类的基类.它提供反射对象绕过Java语言权限控制检查的权限. 当Fields Methods Constructors被用来set get 对象域,调用方法或者产生初始化对象实例的时候会践行…