JDBC-ODBC连接Oracle数据库

来源:互联网 发布:算法竞赛入门经典视频 编辑:程序博客网 时间:2024/05/05 11:58

工程目录:



lib放jdbc的jar包

工具类Util:

package com.jdbc;


import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;


public class ConnectionUtil {
public static Connection getConn() throws ClassNotFoundException, SQLException{
//1、加载Oracle的驱动类
// Class.forName("com.mysql.jdbc.Driver");
Class.forName("oracle.jdbc.driver.OracleDriver");

//2、由驱动管理类DriverManager去获得连接的对象Connection
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:dbhbd", "c##hang", "oracle123");
return conn;
}

public static void main(String[] args) throws ClassNotFoundException, SQLException {
Connection conn = getConn();
//获得数据库的元数据信息,为了方便或者数据库的相关信息,比如名字或者版本号
DatabaseMetaData dbmd = conn.getMetaData();
System.out.println("恭喜你登录的是" +dbmd.getDatabaseProductName() + 
"名字的是数据库,版本号是" + dbmd.getDatabaseProductVersion());
}
}


操作类:

package com.jdbc;


import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;


import com.jdbc.bean.User;


public class OperationDB {

/**
* 增删改操作
* @param conn
* @param sql
* @throws SQLException
*/
public static void updateDB(Connection conn, String sql) throws SQLException {
//获得执行sql语句的对象。Statement对象或者PreparedStatement对象。
Statement stmt = conn.createStatement();
//执行sql语句(增删改的)
int result = stmt.executeUpdate(sql);
System.out.println("恭喜你执行成功"+result+"条记录!");

}

/**
* 查询所有用户的方法
* @param conn
* @param sql
* @return
* @throws SQLException
*/
public static List<User> queryDB(Connection conn, String sql) throws SQLException {
//获得执行sql语句的对象。Statement对象或者PreparedStatement对象。
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
List<User> userList = new ArrayList<User>();
//判断表中有无记录
while(rs.next()) {
User user = new User();
String userId = rs.getString(1);
String userName = rs.getString(2);
String userPassword = rs.getString(3);
user.setUser_id(userId);
user.setUser_name(userName);
user.setUser_password(userPassword);
userList.add(user);
}
return userList;
}



public static void main(String[] args) throws ClassNotFoundException, SQLException {
Connection conn = ConnectionUtil.getConn();
//updateDB(conn, "insert into user_list values('4','zhaoliu','aa')");
//updateDB(conn, "update user_list set user_password='123456' where user_name='zhangsan'");
//updateDB(conn, "delete from user_list where user_id='1'");
List<User> userList = queryDB(conn, "select * from user_list");
for(int i = 0;i < userList.size();i ++) {
System.out.print(userList.get(i).getUser_id()+"--"+userList.get(i).getUser_name()+"--"+userList.get(i).getUser_password());
System.out.println("");
}
}
}



Oracle表结构:



下篇分享整合版的,每天只需要进步一点点。。。