java.lang.NullPointerException 怎么回事?高手
public class XczyDao {
private Connection con = null;
 private String url;//数据库URL
private String username;//登录数据库用户名
private String password;//用户密码
private String driverClassName;//用户密码
/**
  * 返回到数据库的一个连接,在一个系统或类中,如果经常进行数据库的相关操作
  * 会把建立数据库的连接作为一个单独的方法。
  */
 public void initConnection()throws Exception{
  getProperty();
 try
  {
 Class.forName("driverClassName");
    con = DriverManager.getConnection(url, username, password);
  }
  catch(SQLException e) {}
    
  }
 
 /**
  * 读取属性配置文件
  */
 private void getProperty()
 {
  Properties prop = new Properties();
  try
  {
   InputStream in = this.getClass().getResourceAsStream("/Config.properties");
   prop.load(in);
   driverClassName = prop.getProperty("driverClassName");
   url = prop.getProperty("url");
   username = prop.getProperty("username");
   password = prop.getProperty("password");   
  }
  catch(IOException e)
  {
   e.printStackTrace();
  }
 }
Config.properties
 driverClassName=oracle.jdbc.driver.OracleDriver  
  url=jdbc:oracle:thin:@10.224.3.52:1521:ora9i2 
  username=yz 
  password=yz 

解决方案 »

  1.   

    Class.forName("driverClassName"); 
    这里的driverClassName应该是一个变量名吧,
    把引号去掉。
      

  2.   


    Enumeration propNames = props.propertyNames();
    while (propNames.hasMoreElements()) {
    driverClassName = prop.getProperty("driverClassName"); 
      url = prop.getProperty("url"); 
      username = prop.getProperty("username"); 
      password = prop.getProperty("password");  试试...吧..不行继续百度..
      

  3.   

    java.lang.NullPointerException 怎么回事?高手 
    public class XczyDao { 
    private Connection con = null; 
    private String url;//数据库URL 
    private String username;//登录数据库用户名 
    private String password;//用户密码 
    private String driverClassName;//驱动
    /** 
      * 返回到数据库的一个连接,在一个系统或类中,如果经常进行数据库的相关操作 
      * 会把建立数据库的连接作为一个单独的方法。 
      */ 
    public void initConnection()throws Exception{ 
      getProperty(); 
    try 
      { 
    Class.forName(driverClassName); 
        con = DriverManager.getConnection(url, username, password); 
      } 
      catch(SQLException e) {} 
        
      } /** 
      * 读取属性配置文件 
      */ 
    private void getProperty() 

      Properties prop = new Properties(); 
      try 
      { 
      InputStream in = this.getClass().getResourceAsStream("/Config.properties"); 
      prop.load(in); 
      driverClassName = prop.getProperty("driverClassName"); 
      url = prop.getProperty("url"); 
      username = prop.getProperty("username"); 
      password = prop.getProperty("password");  
      } 
      catch(IOException e) 
      { 
      e.printStackTrace(); 
      } 

    Config.properties 
    driverClassName=oracle.jdbc.driver.OracleDriver  
      url=jdbc:oracle:thin:@10.224.3.52:1521:ora9i2 
      username=yz 
      password=yz 
      

  4.   

    增加此语句试试driverClassName="oracle.jdbc.driver.OracleDriver";
    不行的话写一个连接Oracle的JSP程序test.jsp试试看,这样可以保证你完全搞懂jsp是如何连接oracle的。
    1、连入SQL*Plus
    以system/manager用户登录,
    SQL> conn system/manager
    创建新的用户:如user1/pass1,赋予connect,resource权限。
    SQL> grant connect,resource to user1 identified by pass1;
    SQL> conn user1/pass1
    SQL> create table test(a number,b char(10));
    SQL> insert into test values(1,\"一\");
    SQL> insert into test values(2,\"二\");
    SQL> insert into test values(3,\"三\");
    SQL> commit;
    SQL> select * from test; A B
    ---------- ----------
    1 一
    2 二
    3 三
    2、配置ODBC(在服务器端设置)
    开始->设置->控制面板->管理工具->数据源 (ODBC)->系统DSN->添加->
    选择“Oracle ODBC Driver”->完成->
    Data Source Name:test名字随便取,好记就行,如:test
    Service Name:oradb Oracle数据库的实例名,本例:oradb,一般Oracle默认安装为ORCL
    UserID:user1 Oracle用户名,本例:user1
    按“OK”->按“确定”退出3、在C:\JBuilder4\tomcat\webapps\test下创建test.jsp,用notebook编辑,输入以下代码
    <!--首先导入一些必要的packages-->
    <%@ page info=\"database handler\"%>
    <%@ page import=\"java.io.*\"%>
    <%@ page import=\"java.util.*\"%>
    <!--告诉编译器使用SQL包-->
    <%@ page import=\"java.sql.*\"%>
    <%@ page import=\"javax.servlet.*\"%>
    <%@ page import=\"javax.servlet.http.*\"%> 
    网管网www.bitscn.com
    <%
    //以try开始
    try
    {
    Connection con;
    Statement stmt;
    ResultSet rs;
    //加载驱动程序,下面的代码为加载JDBD-ODBC驱动程序
    Class.forName(\"sun.jdbc.odbc.JdbcOdbcDriver\");
    //用适当的驱动程序连接到数据库,test\"是系统dsn名
    String url=\"jdbc:odbc:test\";
    //建立连接,类似于ASP中的创建数据库联接
    con=DriverManager.getConnection(url, \"user1\", \"pass1\");
    //创建一个JDBC声明
    stmt = con.createStatement();
    //增加新记录
    stmt.executeUpdate(\"INSERT INTO test (a,b) VALUES (1,\"2\")\");
    //查询记录
    rs = stmt.executeQuery(\"SELECT a,b from test\");
    //输出查询结果
    out.println(\"<table border=1 width=400>\");
    while (rs.next())
    {
    String col1 = rs.getString(1);
    String col2 = rs.getString(2);
    //打印所显示的数据
    out.println(\"<tr><td>\"+col1+\"</td><td>\"+col2+\"</td></tr>\"); 网管联盟bitsCN_com 
    }
    out.println(\"</table>\");
    }
    //如果加载时出错,给出相应的错误信息
    catch (Exception e) {}
    %>
    4、打开一个浏览器窗口,输入以下地址来查看运行结果
    http://localhost:8080/test/test.jsp 
    转自www.bitsCN.com
      

  5.   

    看出现的错误是空指针....如果是少驱动包的话,会报SQLEXCETION.
    估计是下面这里出现空的情况.....
    InputStream in = this.getClass().getResourceAsStream("/Config.properties"); 
      prop.load(in); 具体还要把详细错误代码
      

  6.   

    空指针异常.你试着跟踪查找错误.看到底执行到哪儿出现的问题.
    有可能是你的数据库没有连上.
    你把private改成public试试看.