JDBC连接Oracle数据库代码示例

mtain 2016年04月12日 156次浏览

Oracle版本:Oracle 11g 2R

1.建表插入数据

建表
create table t_user(
id number(8) not null,
username varchar2(20),
password varchar2(20),
name varchar2(8),
sex char(2),
age int,
createdate date default sysdate
);

查看数据表结构
describe t_user;

插入数据
insert into t_user (id,username,password,name,sex,age)values(1,’test’,’test123456’,’A’,’1’,18);
insert into t_user (id,username,password,name,sex,age)values(2,’test’,’test123456’,’B’,’2’,18);
commit;

注意:oracle插入数据时一定要commit;提交

2.导入Jar包

ojdbc6.jar

3.java连接代码

package test.oracle;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;

public class TestOracle {

public static void main(String\[\] args) {
	new TestOracle().testOracle();
}

/\*\*
 \* JDBC连接Oracle数据库的示例代码
 */
public void testOracle() {
	Connection con = null;// 创建一个数据库连接
	PreparedStatement pre = null;// 创建预编译语句对象,一般都是用这个而不用Statement
	ResultSet result = null;// 创建一个结果集对象
	try {
		Class.forName("oracle.jdbc.driver.OracleDriver");// 加载Oracle驱动程序
		System.out.println("开始尝试连接数据库!");
		String url = "jdbc:oracle:" + "thin:@192.168.64.144:1521:ORCL";
		String user = "system";// 用户名,系统默认的账户名
		String password = "helloworld";// 密码
		con = DriverManager.getConnection(url, user, password);// 获取连接
		System.out.println("连接成功!");
		String sql = "select * from t_user where username=?";// 预编译语句,“?”代表参数
		pre = con.prepareStatement(sql);// 实例化预编译语句
		pre.setString(1,"test");// 设置参数
		result = pre.executeQuery();// 执行查询
		while (result.next()){
			// 当结果集不为空时
			System.out.println("编号:" + result.getInt("id") + "姓名:" + result.getString("name")+"性别:" + result.getString("sex")+"年龄:"+ result.getString("age"));
		}
	} catch (Exception e) {
		e.printStackTrace();
	} finally {
		try {
			// 逐一将上面的几个对象关闭,因为不关闭的话会影响性能、并且占用资源
			// 注意关闭的顺序,最后使用的最先关闭
			if (result != null)
				result.close();
			if (pre != null)
				pre.close();
			if (con != null)
				con.close();
			System.out.println("数据库连接已关闭!");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

}