<%@ page contentType="text/htmlcharset=gb2312"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>Oracle数据库连接测试</title>
</head>
<body>
<%
java.sql.Connection lConn = null
java.sql.Statement lStat = null
java.sql.ResultSet lRs = null
try
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver())
String lUrl = "java:oracle:thin:@localhost:1521:orcl"
//java:oracle:thin: 表示使用的是thin驱动
//@srv:1521: 表示使用的服务器的名字和端口号
//dbname: 表示数据库的SID
lConn = DriverManager.getConnection(lUrl,"system","rg")
lStat = lConn.createStatement()
//创建表
String createTableCoffees = "CREATE TABLE COFFEES " +
"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " +
"SALES INTEGER, TOTAL INTEGER)"
lStat.executeUpdate(createTableCoffees)
//插入数据
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian', 101, 7.99, 0, 0)")
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Espresso', 150, 9.99, 0, 0)")
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian_Decaf', 101, 8.99, 0, 0)")
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('French_Roast_Decaf', 49, 9.99, 0, 0)")
//查询结果
lRs = lStat.executeQuery("select * from COFFEES")
//显示结果
out.println("<table>")
while (lRs.next()) {
out.print("<tr><td>" + lRs.getString(1))
//COF_NAME
out.print( "<td>" + lRs.getInt(2))
//SUP_ID
out.print( "<td>" + lRs.getFloat(3))
//PRICE
out.print( "<td>" + lRs.getInt(4))
//SALES
out.println( "<td>" + lRs.getInt(5))
//TOTAL
}
out.println("</table>")
lRs.close()
lStat.close()
} catch (SQLException e) {
throw new ServletException(e)
} finally {
try {
if (lConn != null)
lConn.close()
} catch (SQLException e) {
}
}
%>
</body>
</html>
驱动包放了多个吗?是的话,放一个试试,不过放多了也没什么问题。JAR包其实就是一个类文件库,在使用的时候必须加载到工程中去。放jar包的位置没有问题,问题就在于eclipse是不是需要手动加载,myeclipse中有很多插件,当把jar包放入lib文件夹后就自动加载了。java连接Oracle11G:1,找到驱动包,在oracle安装目录下我的是D:\Oracle\product\11.1.0\db_1\jdbc\lib;此目录下有ojdbc5.jar,ojdbc6.jar,如果jdk5就用5,6就用6;
2,配置驱动包的变量(我把驱动包拷出来,放在d:\java\util里面),配置后上面MYSQL的类似。
3,测试代码:
import java.sql.Connection
import java.sql.DriverManager
import java.sql.SQLException
import java.sql.PreparedStatement
public class JDBCOracle{
// 定义数据库驱动程序
public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver"
// 定义数据库的连接地址
public static final String DBURL = "jdbc:oracle:thin:@localhost:端口号:数据库标识符"
//端口号后标识符可以通过在doc下运行lsnrctl status查看 default:1521
// 数据库的连接用户名
public static final String DBUSER = "scott"
// 数据库的连接密码
public static final String DBPASS = "tiger"
public static void main(String args[]) throws Exception{// 所有异常抛出
Connection conn = null// 数据库连接
Class.forName(DBDRIVER) // 加载驱动程序
conn = DriverManager.getConnection(DBURL,DBUSER,DBPASS)
PreparedStatement pstmt = null
String sql = "INSERT INTO person(id,name,age,birthday) VALUES (myseq.nextVal,?,?,?)"
pstmt = conn.prepareStatement(sql)
pstmt.setString(1,"tomcat")
pstmt.setInt(2,30)
pstmt.setDate(3,new java.sql.Date(new java.util.Date().getTime()))
pstmt.executeUpdate() // 执行更新 *** 作
pstmt.close()
conn.close() // 数据库关闭
}
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)