📄 jdbcconnct.java
字号:
package com.hb.jdbcconnct;
import java.io.FileInputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.Properties;
import java.util.Vector;
import javax.swing.JOptionPane;
/**
* 定义一个类 JdbcConnct用于连接Oracle数据库
* @author Administrator *
*/
public class JdbcConnct {
/**
* 定义一个方法fetchConnection() 获取连接对象
*/
public static Connection fetchConnection() {
// 导入JDBC driver
try {
FileInputStream fin = new FileInputStream("config.properties");
Properties property = new Properties();
property.load(fin);
String url = property.getProperty("url");
String user = property.getProperty("user");
String psw = property.getProperty("psw");
Class.forName("oracle.jdbc.driver.OracleDriver") ;
// String url = "jdbc:oracle:thin:@192.168.111.79:1521:orcl";
// String user = "zlb";
// String pwd = "hb2080";
return DriverManager.getConnection(url, user, psw);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
/**
* 更新数据库数据,getData()
* @param strSQL String类型,更新数据库的SQL语句
* @return int updateData 更新受影响行数,否则返回-1,若发生异常,则返回0
* @throws SQLException
*/
public int updateData(String strSQL) throws SQLException {
// 建立一个JDBC对象
JdbcConnct jdbcConnection = new JdbcConnct();
// 建立一个数据库连接对象
Connection connection = null;
// 建议一个SQLStatement状态对象
Statement statement = null;
//定义一个int变量 updataLine 返回影响的行数
int updataLine = 0;
//获得SQL语句
String sql1 = strSQL;
try {
System.out.println("before");
connection = jdbcConnection.fetchConnection();
statement = connection.createStatement();
updataLine = statement.executeUpdate(sql1);
} catch (SQLException e) {
//e.printStackTrace();
return 0;
}catch(Exception e1){
e1.printStackTrace();
return 0;
}
finally {
connection.close();
statement.close();
}
return updataLine;
}
/** 得到数据库数据,getData()
*
* @param strSQL String类型,更新数据库的SQL语句
* @return Vector变量,返回数据集所有数据,Vector为二维变量,每一维存储一行 String[]
* @throws SQLException
*/
public Vector getData(String strSQL) throws SQLException {
// 建立一个JDBC对象
JdbcConnct jdbcConnection = new JdbcConnct();
// 建立一个数据库连接对象
Connection connection = null;
// 建议一个SQLStatement状态对象
Statement statement = null;
// 建立一个ResultSet结果集对象
ResultSet resultSet = null;
//定义一个Vector变量 vecData 存储数据集
Vector vecData = new Vector();
//定义int变量 ncoloumn,数据库表的列数
int ncoloumn = 0;
//获得SQL语句
String sql1 = strSQL;
try {
System.out.println("before");
connection = jdbcConnection.fetchConnection();
statement = connection.createStatement(resultSet.TYPE_SCROLL_INSENSITIVE,
resultSet.CONCUR_READ_ONLY);
resultSet = statement.executeQuery(sql1);
//获取数据库表的列数
ncoloumn = resultSet.getMetaData().getColumnCount();
//定义String变量 strrowData,一行数据
ArrayList aryrowData = new ArrayList(ncoloumn);
//数据集对象游标定位到第一个个数据前
resultSet.beforeFirst();
while (resultSet.next()) {
//定义一个一维数组变量 ,即时定义,即时增加
String [] strTemp = new String[ncoloumn];
for(int i=0; i<ncoloumn ;i++ ){
strTemp[i] = resultSet.getString(i+1);
}
vecData.add(strTemp);
}
} catch (SQLException e) {
e.printStackTrace();
return null;
}catch(Exception e1){
e1.printStackTrace();
return null;
}
finally {
connection.close();
statement.close();
resultSet.close();
}
return vecData;
}
/**
* 入口方法
*/
public static void main(String [] args)throws Exception {
// 建立一个Connection对象
Connection connection = null;
try{
connection = fetchConnection();
// 打印连接对象的指针值
System.out.println("\tConnection: " + connection);
}catch(Exception e){
e.printStackTrace();
}finally{
//关闭连接对象
connection.close();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -