郁闷了一天,还是没有解决这个问题,请各位大虾帮忙!
我的一个名为 DbControl 的 JAVA类文件的使用连接池源码如下:public void getDbConnection() throws ClassNotFoundException,SQLException{
try{
 Context context = new InitialContext();
dataSource = (DataSource) context.lookup("java:/comp/env/jdbc/sqlserver");
 con = dataSource.getConnection();
stat= con.createStatement();
System.out.println("connectin succesful");
}catch (Exception e) {
e.printStackTrace();
System.out.println("获取数据源出错!!");
}
// Class.forName(Driver);
// 
// con=DriverManager.getConnection(URL,Username,Password);
}然后在MAIN方法里面测试连接:public static void main(String[] args) {
// TODO Auto-generated method stubDbControl c = new DbControl();
// String sql = "Insert into[User]([username],[password],[realname],[company],[department],[position],[qq],[msn],[email],[telephone])Values(0,0,0,0,0,0,0,0,0,0)";
// 
try {
c.getDbConnection();
// String info = c.DoInsert(sql);
// System.out.println(info);
} catch (ClassNotFoundException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
} catch (SQLException e) {
// // TODO Auto-generated catch block
// e.printStackTrace();
}
// c.close();
// }结果抛出如下异常:javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
at javax.naming.spi.NamingManager.getInitialContext(Unknown Source)
at javax.naming.InitialContext.getDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.getURLOrDefaultInitCtx(Unknown Source)
at javax.naming.InitialContext.lookup(Unknown Source)
at db.DbControl.getDbConnection(DbControl.java:35)
at db.DbControl.main(DbControl.java:120)