web.xml
<servlet>
<servlet-name>DbConn</servlet-name>
<servlet-class>dao.DbConn</servlet-class>
<init-param>
<param-name>dbConnDriver</param-name>
<param-value>oracle.jdbc.driver.OracleDriver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:oracle:thin:@10.224.3.70:1521:ora9i1</param-value>
</init-param>
<init-param>
<param-name>user</param-name>
<param-value>smis</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>smis</param-value>
</init-param>
</servlet>
package dao;import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DbConn extends HttpServlet{
private String dbConnDriver = null;
private String url = null;
private String user = null;
private String password = null;
Connection conn = null;
public void getContext(){
try{
ServletContext c = getServletConfig().getServletContext();
dbConnDriver =c.getInitParameter("dbConnDriver");
url =c.getInitParameter("url");
user =c.getInitParameter("user");
password =c.getInitParameter("password");
}catch (Exception e){System.out.println(e.toString());}
}
public void initConnection(){
getContext();
try{
Class.forName(dbConnDriver);
conn = DriverManager.getConnection(url,user,password);
}
catch (Exception e){e.printStackTrace();}
}
public void closeConnection(){
try{
if(conn!=null){
conn.close();
conn = null;
}
}catch(Exception e){e.printStackTrace();}
}
}
java.lang.NullPointerException
java.lang.NullPointerException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at dao.DbConn.initConnection(DbConn.java:24)
<servlet>
<servlet-name>DbConn</servlet-name>
<servlet-class>dao.DbConn</servlet-class>
<init-param>
<param-name>dbConnDriver</param-name>
<param-value>oracle.jdbc.driver.OracleDriver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:oracle:thin:@10.224.3.70:1521:ora9i1</param-value>
</init-param>
<init-param>
<param-name>user</param-name>
<param-value>smis</param-value>
</init-param>
<init-param>
<param-name>password</param-name>
<param-value>smis</param-value>
</init-param>
</servlet>
package dao;import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DbConn extends HttpServlet{
private String dbConnDriver = null;
private String url = null;
private String user = null;
private String password = null;
Connection conn = null;
public void getContext(){
try{
ServletContext c = getServletConfig().getServletContext();
dbConnDriver =c.getInitParameter("dbConnDriver");
url =c.getInitParameter("url");
user =c.getInitParameter("user");
password =c.getInitParameter("password");
}catch (Exception e){System.out.println(e.toString());}
}
public void initConnection(){
getContext();
try{
Class.forName(dbConnDriver);
conn = DriverManager.getConnection(url,user,password);
}
catch (Exception e){e.printStackTrace();}
}
public void closeConnection(){
try{
if(conn!=null){
conn.close();
conn = null;
}
}catch(Exception e){e.printStackTrace();}
}
}
java.lang.NullPointerException
java.lang.NullPointerException
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at dao.DbConn.initConnection(DbConn.java:24)
解决方案 »
- Myeclipse的cvs问题
- 关于在windows7 x64 运行jetty7.6时Error 503 SERVICE_UNAVAILABLE
- 怎样一次性从数据库中删除多个复选框选项
- getParameter中文乱码问题
- struts中同一表单中两个submit怎么处理?
- 最简单一问,关于JSP和ASP区别
- 帮忙看个错误,真不知道错哪了哟,看了一个晚上,头都晕了
- 急!用DW把JSP和MSSQL连接出错
- JSP书我看的差不多了,大家能给我推荐一个比较规范的JSP源代码吗,可以下载的, 谢谢
- 求JDBC驱动程序
- gwt找不到Entry-point类,是咋回事啊?
- 晕死 我电脑上的mysql驱动不见了
import java.util.ArrayList;
import vo.Login;
public class LoginDao extends DbConn{
public ArrayList Login(String dm,String dbrdm){
ArrayList xx = new ArrayList();
String sql = "SELECT XM,KL,BC,FROM dp_zyr where dm=" + dm+ "AND SELECT DQBB,BBRQ FROM dp_gzgw where dm=" + dbrdm ;
try{
this.initConnection();
ResultSet rs = conn.createStatement().executeQuery(sql);
while(rs.next()){
Login login = new Login();
login.setMm(rs.getString("KL"));//密码
login.setXm(rs.getString("XM"));//姓名
login.setBc(rs.getString("BC"));//班次
login.setBb(rs.getString("DQBB"));//班别
login.setRq(rs.getString("BBRQ"));//日期
xx.add(login);
}
}catch(Exception ex){ex.printStackTrace();}
finally{
this.closeConnection();
}
return xx;
}
}
=================================\
24行是哪一行?NullPointerException,调试看看哪个没取到值
打印出你的 dbConnDriver看看吧!
检查驱动是否放入到classpath下了再检查一下 dbConnDriver =c.getInitParameter("dbConnDriver");是否获取的那个串
或者直接通过dbConnDriver="oracle.jdbc.driver.OracleDriver"测试是否好使
这个有问题吧
没找找这个类oracle.jdbc.driver.OracleDriver
你这个驱动导入没
2.检查下你的jar包等是否导入OK
改为 ServletConfig c = getServletConfig(); 就可以了.
错误在这里
Class.forName(null)
可能是Config什么都没有取到楼上的
ServletConfig c = getServletConfig();
虽然同意,但是最好还是用HttpServlet得
initConfig(ServletConfig c) throws ServletException方法,此方法容器自动调用。然后你在这个方法里设置参数为正统做法。struts得ActionServlet,还有springmvc都是在这里设置的。
getContext();
try{
Class.forName(dbConnDriver);
conn = DriverManager.getConnection(url,user,password);
if(conn !=null){
LoggerManager.getLog(classname).info("get a connection!")
}
}
catch (Exception e){e.printStackTrace();}
}
配置的初始化参数只对当前servlet有效
要想同样必须是context-init才行
package dao;import java.sql.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class DbConn extends HttpServlet{
private String dbConnDriver = null; //是空的吧
private String url = null;
private String user = null;
private String password = null;
Connection conn = null;
public void getContext(){
try{
ServletContext c = getServletConfig().getServletContext();
dbConnDriver =c.getInitParameter("dbConnDriver"); //别告诉我这是初始化
url =c.getInitParameter("url");
user =c.getInitParameter("user");
password =c.getInitParameter("password");
}catch (Exception e){System.out.println(e.toString());}
}
public void initConnection(){
getContext();
try{
Class.forName(dbConnDriver); //好像还是空的吧
conn = DriverManager.getConnection(url,user,password);
}
catch (Exception e){e.printStackTrace();}
}
public void closeConnection(){
try{
if(conn!=null){
conn.close();
conn = null;
}
}catch(Exception e){e.printStackTrace();}
}
}
说完了 给分吧 嘿嘿