package zh.zyz.ruling001;import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Denglu extends HttpServlet {
private PreparedStatement ps = null;
private Connection conn = null;
private ResultSet rs = null;
private String searchByID(String ID){
String PASSWORD = null;
String sql = "SELECT PASSWORD FROM USERS WHERE USERID = '"+ID+"'";
try {
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while(rs.next()){
PASSWORD = rs.getString(1);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return PASSWORD;
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
if(ps != null){
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("UTF-8"); String ID = request.getParameter("userid");
String pssword = request.getParameter("password");
String pass = searchByID(ID);
System.out.println(ID);
System.out.println(pssword);
System.out.println(pass);
} @Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
String url = "jdbc:oracle:thin:@localhost:1521:oracle";
String user = "scott";
String password = "tiger";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url, user, password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
conn = null;
}
}
}为什么会总是出现异常呢java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at zh.zyz.ruling001.Denglu.init(Denglu.java:97)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:130)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class Denglu extends HttpServlet {
private PreparedStatement ps = null;
private Connection conn = null;
private ResultSet rs = null;
private String searchByID(String ID){
String PASSWORD = null;
String sql = "SELECT PASSWORD FROM USERS WHERE USERID = '"+ID+"'";
try {
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
while(rs.next()){
PASSWORD = rs.getString(1);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return PASSWORD;
}
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
if(ps != null){
try {
ps.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
} public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
} public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
response.setCharacterEncoding("UTF-8"); String ID = request.getParameter("userid");
String pssword = request.getParameter("password");
String pass = searchByID(ID);
System.out.println(ID);
System.out.println(pssword);
System.out.println(pass);
} @Override
public void init(ServletConfig config) throws ServletException {
// TODO Auto-generated method stub
super.init(config);
String url = "jdbc:oracle:thin:@localhost:1521:oracle";
String user = "scott";
String password = "tiger";
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn = DriverManager.getConnection(url, user, password);
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
conn = null;
}
}
}为什么会总是出现异常呢java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1352)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1198)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:169)
at zh.zyz.ruling001.Denglu.init(Denglu.java:97)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1105)
at org.apache.catalina.core.StandardWrapper.allocate(StandardWrapper.java:757)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:130)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:178)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:126)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:107)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:148)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:869)
at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:664)
at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:527)
at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:80)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:684)
at java.lang.Thread.run(Thread.java:619)
解决方案 »
- oci绑定变量传不进去
- 求教:用varchar(8)还是Number(8)作主键,效率如何?
- 初始化提供程序时发生错误,测试连接失败.发生了一个oracle错误,但无法从oracle中检索错误信息?
- 如何删除oracle数据库?
- 100分诚心求教!无论写过程还是函数总是报错
- 高难度:在一条select语句中,如何实现重复显示任何一条纪录3次??
- 为什么无法安装Oracle9i,急急
- Schema 是什么东西啊?Schema manger 它能干些什么啊?
- "ORA-01555 snapshot too old"问题的原因和良策. 急!!!
- 一个SQL写法,每个班级成绩排名前10的学生。
- 查询出现很多数据重复?
- sql语句更新两个字段相加的问题
java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
你的驱动考到相应目录了吗?
这行代码的意思是找到OracleDriver这个类,你的工程中肯定找不到这个类啊。。
conn = DriverManager.getConnection(url, user, password);
也就是Oracle连接数据库的jar包
classes12.jar和ojdbc.jar其中一个放到工程的lib目录下就可以了
classes12.jar在Oracle的安装目录下就有