<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    把困難踩在腳下

    迎難而上

     

    JDBC小程序

    JDBC(Java Data Base Connectivity,java數據庫連接)是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。

    JDBC訪問數據庫的步驟:

    1.加載數據庫驅動

    2.獲得數據庫連接

    3.創建SQL語句

    4.執行查詢

    5.遍歷結果集

    6.關閉數據庫連接

    下面看一個小程序:

     

    package com.jspring.jdbc; 

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

    public class Demo1 {
        
    public static void main(String args[])
        
    {
            query();
        }

        
    public static void query()
        
    {
            Connection conn
    =null;
            
    //1.加載數據庫驅動
            try {
                Class.forName(
    "com.mysql.jdbc.Driver");
                
    //DriverManager 驅動程序管理器 在數據庫和相應驅動程序之間建立連接
                
    //2.獲得數據庫連接
                conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1/jdbc_db","root","1234");
                
    //3.創建語句
                String sql="select * from UserTbl";
                
    //返回一個執行SQL的語句
                Statement stmt = null;
                stmt 
    = conn.createStatement();
                
    //返回查詢的
                
    //4.執行語句
                ResultSet rs = null;
                rs 
    = stmt.executeQuery(sql);
                
    //5.遍歷結果集
                    while(rs.next())
                    
    {
                        
    int id=rs.getInt(1);
                        String username
    =rs.getString(2);
                        String password
    =rs.getString(3);
                        
    int age=rs.getInt(4);
                        System.out.println(id
    +":"+username+":"+password+":"+age);
                    }

            }
     catch (Exception e) {
                e.printStackTrace();
            }
    finally{
                
    if(conn!=null){
                    
    try{//5.關閉數據庫連接
                        conn.close();
                    }
    catch(SQLException e){
                        conn
    =null;
                        e.printStackTrace();
                    }

                }

            }

        }
     

    }
     

    1.此程序首先要在這個程序所在的工程中插入連接數據庫的jar包(然后右擊選擇build path-----add  to build path),然后才能執行程序否則會出現以下錯誤提示:

    1

    這個程序通過執行

    Class.forName("com.mysql.jdbc.Driver");
    這個語句實現加載驅動,因為我用的是MYSQL的數據庫,所以加載的mysql的驅動,如果你用的是其他數據庫,那就要加載其他數據庫的jar包。

    2.和數據庫建立連接通過

    conn=DriverManager.getConnection("jdbc:mysql://127.0.0.1/jdbc_db","root","1234");
    語句,getConnection函數中三個參數分別是url,user,password

    3.創建語句,在這個程序中只建立了一個查詢語句,我們可以根據自己的業務需求建立其他的語句,例如插入,更新等語句

    4.Statement是靜態的SQL語句,用來盛放SQL語句,他有一個子類為PreparedStatement為預編譯靜態語句

    5.ResultSet 是用來盛放查詢結果的一個集合

    程序運行結果:

    如果usertbl表中有數據就會打印在控制臺上如

    1

    如果usertbl表中沒有數據那么控制臺上就沒有任何數據

    如果數據庫中沒有這個表則會出現

    1

    在使用JDBC時一定要加載數據庫驅動!

    一般情況下,我們會采用下面這種方法和數據庫進行連接

    將數據庫的驅動連接和url,user,password都寫到配置文件中,通過從配置文件中讀數據來建立連接,看下面程序

     

    public class ConnectionUtil {
        
    public Connection openConnection(){
            String driver 
    = "";
            String url 
    = "";
            String user 
    = "";
            String password 
    = "";
            Properties prop 
    = new Properties();
            Connection conn 
    = null;
            
    try {
                
    //加載屬性文件
                prop.load(this.getClass().getClassLoader().getResourceAsStream("DBConfig.properties"));
                driver 
    = prop.getProperty("driver");
                url 
    = prop.getProperty("url");
                user 
    = prop.getProperty("user");
                password 
    = prop.getProperty("password");
                
    //Class.forName加載驅動
                Class.forName(driver);
                
    //DriverManager獲得連接
                conn = DriverManager.getConnection(url,user,password);
                
    return conn;
            }
     catch (Exception e) {
                e.printStackTrace();
            }

            
    return null;
        }

    }
     

     

     

    在和數據庫進行連接時,我們只需要調用這個類就可以了

    在第一個程序中我們提到了一個PreparedStatement類,現在我們看一下關于這個類的使用情況

     

    public class Main 

         
    public static void main(String[] args) {
            Customer c 
    = new Customer();
            c.setName(
    "hans");
            c.setEmail(
    "583480612@qq.com");
            TestPrepareStatement.add(c);
             }

        
    public static void add(Customer c) {
            Connection conn 
    = new ConnectionUtil().openConnection();
            String sql 
    = "insert into CustomerTbl(name,email) values(?,?)";
            
    try {
                PreparedStatement pstmt 
    = conn.prepareStatement(sql);
                pstmt.setString(
    1, c.getName());
                pstmt.setString(
    2, c.getEmail());
                pstmt.executeUpdate();
            }
     catch (SQLException e) {
                e.printStackTrace();
            }

        }
     

    }
     

    PreparedStatement為預編譯靜態SQL語句,就是在sql語句中留下一個缺口,由調用這個函數的的成員來補全。

    posted on 2010-12-07 13:25 馮魁 閱讀(772) 評論(1)  編輯  收藏

    評論

    # re: JDBC小程序 2010-12-14 17:13 洛神賦

    好具體哦!!!!拜讀!!!!  回復  更多評論   


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    導航

    統計

    公告

    快樂每一天!

    Everything is an object!

    常用鏈接

    留言簿(2)

    隨筆檔案

    學習網站

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 免费国产99久久久香蕉| 成人av片无码免费天天看| 久久久久久久亚洲Av无码| 亚洲av午夜精品一区二区三区| 在线人成精品免费视频| 在线看片免费人成视频播| 男女一边桶一边摸一边脱视频免费| 亚洲AV无码久久久久网站蜜桃| 国产成A人亚洲精V品无码性色 | 精品亚洲综合久久中文字幕| 亚洲国产香蕉人人爽成AV片久久 | 亚洲AV无码成H人在线观看| 成在人线AV无码免费| 在线免费观看毛片网站| 性感美女视频在线观看免费精品 | 亚洲精品无码久久久影院相关影片 | 一本天堂ⅴ无码亚洲道久久| 亚洲无人区码一二三码区别图片| 亚洲熟女综合一区二区三区| 猫咪www免费人成网站| 日本黄页网址在线看免费不卡| 亚洲AV永久无码天堂影院| 日韩免费在线中文字幕| a在线免费观看视频| 2020久久精品国产免费| 永久黄网站色视频免费直播| 国产偷国产偷亚洲清高动态图| 99视频免费在线观看| 1000部拍拍拍18勿入免费凤凰福利 | 久久久久亚洲av毛片大| 亚洲精品电影天堂网| 日本免费精品一区二区三区 | 久久免费视频精品| 国产成人精品高清免费| 亚洲春色在线视频| 最新亚洲人成网站在线观看 | 免费黄色电影在线观看| 国产一区二区三区在线免费| 亚洲日本乱码一区二区在线二产线| 黄页网站在线免费观看| 青娱分类视频精品免费2|