import
java.sql.*;
import
java.io.*;
public class JDBCConn{
private String url="";//数据库连接字符串
private String username="";//数据库用户名
private String password="";//数据库密码
public Connection conn(){
try {
//第一步:加载JDBC驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//第二步:创建数据库连接
Connection con =DriverManager.getConnection(url, username, password);
return con;
} catch (ClassNotFoundException cnf){
System.out.println("driver not find:"+cnf);
return null ;
} catch (SQLException sqle){
System.out.println("can't connection db:"+sqle);
return null ;
}
catch (Exception e) {
System.out.println("Failed to load JDBC/ODBC driver.");
return null ;
}
}
public void query(Connection con, String sql){
try {
if (con== null ){
throw new Exception("database connection can't use!");
}
if (sql== null ) throw new Exception("check your parameter: 'sql'! don't input null!");
//第三步:获取Staetment对象
Statement stmt = con.createStatement();
//第四步:执行数据库操作(查询操作)
ResultSet rs = stmt.executeQuery(sql);
//第五步:处理结果集
ResultSetMetaData rmeta = rs.getMetaData();
//获得数据字段个数
int numColumns = rmeta.getColumnCount();
while (rs.next())
{
for ( int i = 0;i< numColumns;i++)
{
String sTemp = rs.getString(i+1);
System.out.print(sTemp+" ");
}
System.out.println("");
}
} catch (Exception e){
System.out.println("query error:"+e);
}
}
public void execute(Connection con, String sql){
try {
if (con== null ) return ;
//第三步:获取Statement对象
Statement stmt = con.createStatement();
//第四步:执行数据库操作(更新操作)
stmt.executeUpdate(sql);
System.out.println("update executed successly");
} catch (Exception e){
System.out.println("execute error: sql = "+sql);
System.out.println(e);
}//end try catch
}//end execute
public void demo(){
String sSQL="";
BufferedReader stdin= new BufferedReader( new InputStreamReader(System.in));
try {
System.out.println("please input update SQL string");
sSQL=stdin.readLine(); //获取命令行输入(更新字符串)
Connection conn = conn(); //执行自定义连接方法(获取数据库连接对象)
execute(conn,sSQL);//执行自定义更新方法
String sql = "select * from TBL_USER";
query(conn,sql);//执行自定义查询方法(查询并处理结果集)
//第六步:关闭数据库连接
conn.close();
} catch (SQLException se){
System.out.println(se);
} catch (Exception e){
System.out.println(e);
}
}
public static void main(String[] arg){
if (arg.length!=3){
System.out.println("use: java JDBCConn url username password");
return ;
}
JDBCConn oc = new JDBCConn();
oc.url = arg[0];
oc.username=arg[1];
oc.password=arg[2];
oc.demo();
}
}
}