jsp连接oracle数据库问题。(初学者简单问题)

yuanquana 2004-05-05 12:12:54
我用的是jdk1.4.2+tomcat5.0,数据库是oracle9.2.0.1.0,我从oracle网站下了一个名叫ojdbc14.jar的文件放在了tomcat下面的\server\lib目录里,环境变量classpath为F:\j2sdk1.4.2_0\4lib\tools.jar;F:\Tomcat 5.0\server\lib\ojdbc14.jar,我用以下代码连接数据库:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为你的数据库的SID
String user="scott";
String password="tiger";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

出现以下错误:

HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

javax.servlet.ServletException: oracle.jdbc.driver.OracleDriver
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:867)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:800)
org.apache.jsp.yq.test_jsp._jspService(test_jsp.java:84)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


root cause

java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1383)
org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1230)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:184)
org.apache.jasper.servlet.JasperLoader.loadClass(JasperLoader.java:110)
java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
java.lang.Class.forName0(Native Method)
java.lang.Class.forName(Class.java:141)
org.apache.jsp.yq.test_jsp._jspService(test_jsp.java:48)
org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:133)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:311)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:301)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:248)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)


note The full stack trace of the root cause is available in the Tomcat logs.


--------------------------------------------------------------------------------

Apache Tomcat/5.0.19
...全文
80 7 点赞 打赏 收藏 举报
写回复
7 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
mazekui 2004-08-12
这个问题最主要是,如果是用Jbuilder开发的,那么必须从把classes12.jar放到Winapp的Win-inf\lib下面,然后最终要的是必须从Jbuilder里面把这个包给引进来就OK了!
  • 打赏
  • 举报
回复
oldcold 2004-08-11
包搞错了
  • 打赏
  • 举报
回复
lovelymaomao 2004-08-11
把class12.jar放到lib目录下

不过不要在JSP页面中连数据库,专门写个类封装,JSP中<jsp:useBean>就行了
  • 打赏
  • 举报
回复
lbhwwj 2004-08-11
楼主,这是我的操作过程,绝对可行
1 将oracle自带的驱动程序classes12.zip文件改名为classes12.jar,并拷贝至tomcat\common\lib下面。
2 配置环境变量,在classPath中设置;tomcat\common\lib\classes12.jar;.
3 启动tomcat
4 编写程序如下:
<%@ import="java.sql.*"%>
<%
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@192.168.0.50:1521:lbhwwj";
String uid="lbh1111";
String pwd="lbh1111";
Connection conn= DriverManager.getConnection(url,uid,pwd);
Statement stmt=conn.createStatement();
String sql="select * from lbh_user";
ResultSet rs=stmt.executeQuery(sql);
if(rs.next())
{
out.println(“数据库连接成功!”);
}
else{
out.println("数据库连接失败!");
}
rs.close();
stmt.close();
conn.close();
%>
  • 打赏
  • 举报
回复
liugaojun 2004-05-05
应当是放在 common\lib 下面
  • 打赏
  • 举报
回复
KevinListening 2004-05-05
只要用classes12.jar就可以了。放到Winapp的Win-inf\lib下面
  • 打赏
  • 举报
回复
redex 2004-05-05
把ojdbc14.jar放到“F:\Tomcat 5.0\common\classes”目录下
同时把CLASSPATH中“F:\Tomcat 5.0\server\lib\ojdbc14.jar”
这一句去掉。
  • 打赏
  • 举报
回复
相关推荐
发帖
Web 开发
加入

8.0w+

社区成员

Java Web 开发
申请成为版主
帖子事件
创建了帖子
2004-05-05 12:12
社区公告
暂无公告