qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          JAVA_JDBC_DEMO

           操作步驟:

            1.注冊數(shù)據(jù)庫驅(qū)動程序

            2.獲取數(shù)據(jù)庫連接對象

            3.建立數(shù)據(jù)庫操作語句

            4.執(zhí)行并返回結(jié)果

            5.釋放連接

            CODE

            1.      配置peoperties屬性文件

            DRIVERS=oracle.jdbc.driver.OracleDriver

            URL=jdbc:oracle:thin:@localhost:1521:orcl

            USERNAME=user

            PASSWORD=password

            2.      解析配置文件屬性

          package com.jdbc;

          import java.io.IOException;
          import java.io.InputStream;
          import java.util.Properties;

          public class DBConfig extends Properties{
           private static final long serialVersionUID = 6988299229093520679L;
           private static DBConfig dbConfig = null;
           
           private DBConfig() {
            try{
             InputStream inStream = DBConfig.class.getResourceAsStream("/dbConfig.properties");
             this.load(inStream);
            }catch (IOException e) {
             e.printStackTrace();
            }
           }
           
           public static DBConfig getInstance() {
            if(dbConfig == null){
             synchronized (DBConfig.class) {
              if(dbConfig == null){
               dbConfig  = new DBConfig();
              }
             }
            }
            return dbConfig;
           }
          }

          3.      加載驅(qū)動獲取連接操作

          package com.jdbc;

          import java.sql.Connection;
          import java.sql.DriverManager;
          import java.sql.ResultSet;
          import java.sql.SQLException;
          import java.sql.Statement;

          public class DBUtils {

           private static String DB_DRIVERS;
           private static String DB_URL;
           private static String DB_USER;
           private static String DB_PASSWORD;
           
           static {
            DBConfig config = DBConfig.getInstance();
            DB_DRIVERS = config.getProperty(DBConstant.DB_DRIVERS);
            DB_URL = config.getProperty(DBConstant.DB_URL);
            DB_USER = config.getProperty(DBConstant.DB_USERNAME);
            DB_PASSWORD = config.getProperty(DBConstant.DB_PASSWORD);
           }
           
           /**
            * 獲取數(shù)據(jù)庫連接
            * @return conn 數(shù)據(jù)庫連接
            * @throws ClassNotFoundException if the class cannot be located
            * @throws SQLException if a database access error occurs
            */
           public static Connection getConnection() throws ClassNotFoundException, SQLException{
            Connection conn = null;
             try {
              // 1.注冊數(shù)據(jù)庫驅(qū)動程序
              Class.forName(DB_DRIVERS);
              // 2.獲取數(shù)據(jù)庫連接對象
              conn = DriverManager.getConnection(DB_URL, DB_USER, DB_PASSWORD);
             } catch (ClassNotFoundException e) {
              throw new ClassNotFoundException("數(shù)據(jù)庫驅(qū)動注冊失敗" + e.getMessage());
             }catch (SQLException e) {
              throw new SQLException("獲取數(shù)據(jù)庫連接對象失敗" + e.getMessage());
             }
            
            return conn;
           }
           
           /**
            * 釋放數(shù)據(jù)庫連接
            */
           public static void release(ResultSet rs, Statement stmt, Connection conn) {
            try {
             if (rs != null) {
              rs.close();
             }
             if (stmt != null) {
              stmt.close();
             }
             if (conn != null) {
              conn.close();
             }
            } catch (SQLException e) {
             e.printStackTrace();
            }
           }

          }


           4.操作

          package com.jdbc;

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

          public class TestDb {
           public static void main(String[] args) throws Exception {
            String sql = "select * from producttype where typeid = ?";  
            // 獲取數(shù)據(jù)庫連接對象
            Connection conn = DBUtils.getConnection();
            // 建立數(shù)據(jù)庫操作語句
            PreparedStatement pstm = conn.prepareStatement(sql);
            pstm.setInt(1, 21);
            // 執(zhí)行操作語句
            ResultSet rs = pstm.executeQuery();
            // 獲取執(zhí)行結(jié)果
            while(rs.next()){
             System.out.println(rs.getInt("typeid"));
            }
            // 關(guān)閉連接
            DBUtils.release(rs, pstm, conn);
           }
          }

            常用JDBC驅(qū)動

          Mysql

          http://www.mysql.com/products/connector/j/

          Oracle 

          http://www.oracle.com/technology/software/tech/java/sqlj_jdbc/index.html

          SQL Server by jTDS

          http://sourceforge.net/project/showfiles.php?group_id=33291

          Postgres

          http://jdbc.postgresql.org/download.html

          SAP DB

          http://www.sapdb.org/sap_db_jdbc.htm

          SyBase by jTDS

          http://jtds.sourceforge.net/

          posted on 2013-07-10 10:32 順其自然EVO 閱讀(250) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2013年7月>
          30123456
          78910111213
          14151617181920
          21222324252627
          28293031123
          45678910

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 扎兰屯市| 泸州市| 九龙城区| 诏安县| 新沂市| 西宁市| 兰考县| 堆龙德庆县| 嵩明县| 丽水市| 施甸县| 八宿县| 和政县| 清涧县| 扶余县| 台安县| 新沂市| 西乌珠穆沁旗| 武鸣县| 青岛市| 青阳县| 丽水市| 凉城县| 静海县| 三亚市| 乐平市| 吉木乃县| 天峨县| 石楼县| 电白县| 游戏| 饶平县| 沙雅县| 泰来县| 白水县| 沿河| 翼城县| 松江区| 南陵县| 封开县| 资阳市|