a详细意外信息如下:
java.lang.NullPointerException 
at afu.dao.FoodDAO.createFoodVO(FoodDAO.java33)
public FoodVO createFoodVO(String foodName,String factory)
{
try
{
  conn = DBConnect.getConnection();
  System.out.println(" con = DBConnect.getConnection() ed");
  prop.load(DBConnect.class.getResourceAsStream("sqlkey.properties"));**********
  System.out.println("prop.load  sqlkey.properties ed");
  if(prop.containsKey("foodDao.selectByfoodName"))
  {
    System.out.println("if prop.containsKey true");
    String sql = prop.getProperty("foodDao.selectByfoodName");
    System.out.println("porp.getProperty foodDao.selectByfoodName");
    pst = conn.prepareStatement(sql);
  }
  res = pst.executeQuery();

  foodVO = new FoodVO(res.getString(1),res.getFloat(2),res.getString(3),res.getString(4));
}
catch(Exception e)
{
  e.printStackTrace();
}
}
就在我用*******表示的那行出现以上意外。
sqlkey.properties 文件肯定是存在的
奇怪的是在DBConnect.getConnection()方法里
有一句
prop.load(DBConnect.class.getResourceAsStream("connectString.properties"));
执行它时却没有意外发生。我用
prop.load(DBConnect.class.getResourceAsStream("connectString.properties"));
替换了******表示的那一行,可仍然出现同样的意外。可见意外的原因应该和sqlkey.properties文件没关系。

解决方案 »

  1.   

    晕,贴半拉代码…………prop倒底是什么啊?初始化没有?
      

  2.   

    看看web-inf/class下到底有没有这个文件。估计是没有啊
      

  3.   

    这种问题自己debug慢慢看就知道了。
      

  4.   

    你应该是对一个为null的对象进行了操作
      比如:
       TestDAO t=null;//没有实例化
       int cou=t.getCount();
      

  5.   

    看下sqlkey.properties文件在哪里
    最好和你的类在同一个包下面
      

  6.   

    是我大意了,
    prop 是个Properties()对象.
      

  7.   

    嗯~我也遇到这个问题。
    设断点,察看一下里面的值,谁的值是null,问题基本上就是它引起的。
      

  8.   

    教你笨方法,每句加system.out  ^_^
      

  9.   

    我是用Servlet调用JAVA Bean的.
    就是在关键代码后加  Systeml.out.println("    ");调试的
      

  10.   

    我的这个程序是用Servelt 调用 JAVABean 
    设断点不起作用吧
      

  11.   

    Eclipse的断点调试非常好用啊,每次用System.out.println()多麻烦啊。