1.通过读取文件配置
package 数据库操作类; /* * Db.java Created on 2007年8月20日, 上午 8:37 */ import java.io.*; import java.sql.*; import java.util.Properties; public class DB { private String driver; private String url; private String user; private String password; private Connection conn; private Statement stm; private ResultSet rs; public DB(){ this("DBConf.properties"); } public DB(String conf) { loadProperties(conf); setConn(); } public Connection getConn(){ return this.conn; } //handle the properties file to get the informations for connection private void loadProperties(String conf){ Properties props = new Properties(); try { props.load(new FileInputStream(conf)); } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } this.driver = props.getProperty("driver"); this.url = props.getProperty("url"); this.user = props.getProperty("user"); this.password = props.getProperty("password"); } //implement the Connection private void setConn(){ try { Class.forName(driver); this.conn = DriverManager.getConnection(url,user,password); } catch(ClassNotFoundException classnotfoundexception) { classnotfoundexception.printStackTrace(); System.err.println("db: " + classnotfoundexception.getMessage()); } catch(SQLException sqlexception) { System.err.println("db.getconn(): " + sqlexception.getMessage()); } } public void doInsert(String sql) { try { Statement statement = conn.createStatement(); int i = stm.executeUpdate(sql); } catch(SQLException sqlexception) { System.err.println("db.executeInset:" + sqlexception.getMessage()); } } public void doDelete(String sql) { try { stm = conn.createStatement(); int i = stm.executeUpdate(sql); } catch(SQLException sqlexception) { System.err.println("db.executeDelete:" + sqlexception.getMessage()); } } public void doUpdate(String sql) { try { stm = conn.createStatement(); int i = stm.executeUpdate(sql); } catch(SQLException sqlexception) { System.err.println("db.executeUpdate:" + sqlexception.getMessage()); } } public ResultSet doSelect(String sql) { try { stm = conn.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY); rs = stm.executeQuery(sql); } catch(SQLException sqlexception) { System.err.println("db.executeQuery: " + sqlexception.getMessage()); } return rs; } public static void main(String[] args){ try{ DB db = new DB(); Connection conn = db.getConn(); if(conn != null && !conn.isClosed()) { System.out.println("連結成功"); ResultSet rs = db.doSelect("select * from content"); while(rs.next()){ System.out.println(rs.getString(1)+":"+rs.getString(2)+":"+rs.getString(3)); } rs.close(); conn.close(); } }catch(SQLException e) { e.printStackTrace(); } } }
本文详细介绍了一个使用Java进行数据库操作的示例,包括从配置文件读取数据库连接信息、建立连接、执行插入、删除、更新和查询操作。文章通过一个具体的DB类展示了如何处理异常,并提供了一个简单的测试方法来验证数据库连接和查询功能。
1951

被折叠的 条评论
为什么被折叠?



