怎样搭建jdbc访问oracle的软件环境?

leonwan 2002-06-26 02:42:41
环境:
os:win2000
oracle8.1.5
jdk1.3
tomcat3.0
怎样设置才能使用jsp访问oracle数据库。
前提:tomcat能够正常启动,简单的jsp程序可以运行。如:helloworld程序。
...全文
78 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
loypen 2002-06-27
  • 打赏
  • 举报
回复
learning
javacool 2002-06-26
  • 打赏
  • 举报
回复
up
icech 2002-06-26
  • 打赏
  • 举报
回复
JSP链接Oracle数据库的几种方法
Jsp链接数据库一般的方式都是通过JDBC。经过一天的测试,我找到几种不同的方法来链接Oracle数据库,以供参考:
数据配置环境
数据库:Oracle 8.15i
Web服务器:Resin 2.11
第一种:利用ODBC链接
1.1配置ODBC
数据源名称:test
服务名称:B2BDB
用户ID:demo
1.2连接程序代码
<%@ page info="database handler"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<html>
<body>
<%@ page contentType="text/html;charset=gb2312" language="java" import="java.sql.*"%>
<%
Connection con=null;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con=DriverManager.getConnection("jdbc:odbc:test","demo","demo");
Statement statement=con.createStatement();
ResultSet rs=statement.executeQuery("select * from userinfo");
%>
<table border="1" width="100%" cellspacing="0" cellpadding="0" align="center" bordercolorlight="#CCCCFF" bordercolordark="#FFFFFF">
<tr bgcolor="#eeeeee">
<td height="25" align="center"><i>id</i></td>
<td height="25" align="center"><i>name</i></td>
<td height="25" align="center"><i>idcard</i></td>
<td height="25" align="center"><i>sex</i></td>
<td height="25" align="center"><i>tel</i></td>
<td height="25" align="center"><i>fax</i></td>
<td height="25" align="center"><i>email</i></td>
<td height="25" align="center"><i>duty</i></td></tr>
<%
while(rs.next()){
out.println("<TR><td align=center><font size=2 color=#999999>"+rs.getString("userid")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("username")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("useridcard")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("usersex")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("usertel")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("userfax")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("useremail")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("userduty")+"</font></TD></TR>");
}
rs.close();
con.close();
}
catch(Exception e)
{
out.println(e.getMessage());
}
%>
</table>
</body>
</html>
1.3显示界面
id name idcard sex tel fax email duty
22 asg 620503790524091 2 86-29-7408637 86-29-7408637 dfgdfhg aasdfgasg
21 卢斌 620503790524091 1 86-29-7408637 86-29-7408600 dooluby@163.com web开发者
1.4出现的问题
这种方式在我机子上出现一个很奇怪的错误(或许是错误),就是在连接数据库的时候总是没有响应,非要用其他的ODBC引导一下才能成功,呵呵
第二种:thin模式
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@lubin:1521:b2bdb";
//orcl为你的数据库的SID
String user="demo";
String password="demo";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from userinfo";
ResultSet rs=stmt.executeQuery(sql);
%>

<table border="1" width="100%" cellspacing="0" cellpadding="0" align="center" bordercolorlight="#CCCCFF" bordercolordark="#FFFFFF">
<tr bgcolor="#eeeeee">
<td height="25" align="center"><i>id</i></td>
<td height="25" align="center"><i>name</i></td>
<td height="25" align="center"><i>idcard</i></td>
<td height="25" align="center"><i>sex</i></td>
<td height="25" align="center"><i>tel</i></td>
<td height="25" align="center"><i>fax</i></td>
<td height="25" align="center"><i>email</i></td>
<td height="25" align="center"><i>duty</i></td></tr>

<%
while(rs.next()){
out.println("<TR><td align=center><font size=2 color=#999999>"+rs.getString("userid")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("username")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("useridcard")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("usersex")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("usertel")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("userfax")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("useremail")+"</font></TD>");
out.println("<TD><font size=2 color=#999999>"+rs.getString("userduty")+"</font></TD></TR>");
}
rs.close();
conn.close();
%>
</table>
</body>
</html>
这种方法倒是很好的,但是需要一个JDBC包(classes12.zip)的支持,在很多地方都可以下载得到,不同的服务企业有不同的配置,下面我来说明一下:
1、对于Resin:
Resin v2.1的确制作得非常好,总之我在配置的时候十分方便就是了。把classes12.zip文件拷贝到Resin\lib目录,并且确保这个目录在CLASSPATH中就可以了。方法比较简单。
2、对于Tomcat:
Tomcat就比较麻烦了,首先要确定你运行的目录,例如你Tomcat设置的目录为myjsp,那么,Tomcat会在此目录下自动生成一个WEB-INF目录,这个目录下还有一个classes目录,你要把classes12.zip文件解压(解压后有两个目录,一个是javax、一个是oracle)到这个目录就可以了。

zhu_liping 2002-06-26
  • 打赏
  • 举报
回复
classes12.zip加到classpath中
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");
}catch (Exception e) {out.println(e);}

Connection con;
Statement stmt;
ResultSet rs;
String url="jdbc:oracle:thin:@192.168.0.1:1521:orcl";
con=DriverManager.getConnection(url,"system","manager");
stmt = con.createStatement();
Leony 2002-06-26
  • 打赏
  • 举报
回复
一、下载安装oracle的jdbc驱动程序
 http://www.csdn.net/expert/topic/670/670716.xml?temp=2.825564E-02
二、通过jdbc-odbc桥访问数据库
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body >
<CENTER>连接数据库例子</CENTER>
</p>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String("jdbc:odbc:Instore Army");
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_READ_ONLY);
String sql="select top 10 * from city";
ResultSet rs=stmt.executeQuery(sql);
%><table width="80%" border="1" cellspacing="0" cellpadding="1" align="center">
<td>城市编号</td>
<td>中文描述</td>
<%
String color,color1,color2;
int count;
count=1;
color1="#99CCFF";
color2="#FFFFCC";
while(rs.next()) {%>
<% count=count+1;
if (count%2==1)
color=color1;
else
color=color2;
%>
<tr bgcolor=<%=color%>>
<td><%=rs.getString(1)%> </td>
<td><%=rs.getString(2)%> </td>
<tr>
<%}%>
</table>
<p>

<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
salute 2002-06-26
  • 打赏
  • 举报
回复
讲ORACLE的jdbc(class111.zip或者class12.zip)放在tomcat/lib中
Leony 2002-06-26
  • 打赏
  • 举报
回复
下载oracle的jdbc驱动程序,通过jdbc访问数据库
http://www.csdn.net/expert/topic/670/670716.xml?temp=.9889337
或者通过jdbc-odbc桥访问数据库

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body >
<CENTER>连接数据库例子</CENTER>
</p>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url=new String("jdbc:odbc:Instore Army");
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE ,ResultSet.CONCUR_READ_ONLY);
String sql="select top 10 * from city";
ResultSet rs=stmt.executeQuery(sql);
%><table width="80%" border="1" cellspacing="0" cellpadding="1" align="center">
<td>城市编号</td>
<td>中文描述</td>
<%
String color,color1,color2;
int count;
count=1;
color1="#99CCFF";
color2="#FFFFCC";
while(rs.next()) {%>
<% count=count+1;
if (count%2==1)
color=color1;
else
color=color2;
%>
<tr bgcolor=<%=color%>>
<td><%=rs.getString(1)%> </td>
<td><%=rs.getString(2)%> </td>
<tr>
<%}%>
</table>
<p>

<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

81,122

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧