1. 程式人生 > >Java操作資料庫之jdbc【原生方式】

Java操作資料庫之jdbc【原生方式】


這裡寫圖片描述
引言:Java對資料庫的操作有很多種技術。例如說jdbc,dbutil +C3p0,hibernate,jdbcTemplate等等【這五個都會總結】,到後面的話使用一些高階的框架去操作資料庫,比如hibernate。但是底層操作資料庫是重要的,高階框架也是也底層為基礎搭建的,所以這裡還是總結一下對一些常用資料庫的操作技術,有興趣的看一下。或者只挑你感興趣的那一部分看

一:JDBC【什麼是JDBC?為什麼使用JDBC?怎麼使用JDBC?】what +why + how
【what】SUN公司為使Java程式靈活的訪問各種不同的關係型資料庫提供的規則。【why】也就是說,不需要java應用程式去直接操作資料庫,而是通過sum公司提供的方法統一去操作資料庫,那麼我們就不需要針對不同的資料庫寫不同的程式碼。只需要在配置檔案裡面配置一下即可,寫程式碼更加方便。使Java程式靈活移植【how】下面講【下面的案例全部以mysql為例】


這裡寫圖片描述
二:開發步驟
1)匯入mysql包,這一步是必須的,無論使用什麼技術操作資料庫,都需要匯入mysql包
這裡寫圖片描述
2) JDBC的六個固定步驟
1,註冊資料庫驅動[利用反射]
2,取得資料庫連線物件Connection
3,建立SQL物件
4,執行SQL命令,並返回結果集
5,處理結果集
6,依次關閉結果集

//1,註冊資料庫驅動有兩種方式
    第一種是:直接註冊資料庫驅動
        DriverManager.registerDriver(new Driver());
    第二種是:利用反射機制間接載入資料庫驅勸,推薦用第二種
        Class.forName
("com.mysql.jdbc.Driver"); //2. 取得資料庫連線物件Connection //取得與MySQL資料庫連線的橋樑,引數分別是:連線資料庫 使用者名稱 密碼Connection conn = DriverManager.getConnection( "jdbc:mysql:///zz2017","root","xiaozheng"); //前兩步驟需要記住以下。下面的 //4:執行sql語句 insert/update/delete----PreparedStatement .executeUpdate(sql):返回值表示影響記錄的行數 select------------------PreparedStatement .exeucteQuery
():返回值表示符合條件的記錄

【注意】建立sql物件的時候,有人會用Statement,我案例中使用的是 PreparedStatement。使用這個的好處是變數可以用佔位符的方式去表示,而且它可以防止sql注入,所以我就採用這種方式,不用Statement

//案例原始碼
String driver = "com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://127.0.0.1:3306/mydb2";
        String user = "root";
        String password = "root";
        String sql = "insert into user(name,gender,salary) values(?,?,?)";
        Connection conn = null;
        PreparedStatement pstmt = null;
        ResultSet rs = null;
        try {
            //註冊資料庫驅動
            Class.forName(driver);
            //取得資料庫連線
            conn = DriverManager.getConnection(url, user, password);
            //進行預編譯,這裡進行引數設定
            pstmt = conn.prepareStatement(sql);
            pstmt.setString(1,"xiaozheng");
            pstmt.setString(2,"男");
            pstmt.setFloat(3,8000);
            //進行編譯
            rs = pstmt.executeQuery();
            while (rs.next()) {
                int id = rs.getInt("id");
                String name = rs.getString("name");
                String gender = rs.getString("gender");
                float salary = rs.getFloat("salary");
                System.out.println(id + ":" + name + ":" + gender + ":"+ salary);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if(rs!=null){//輕量級,建立和銷燬rs所需要的時間和資源較小
                try {
                    rs.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            if(stmt!=null){//輕量級,建立和銷燬rs所需要的時間和資源較小
                try {
                    stmt.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            if(conn!=null){//重量級,建立和銷燬rs所需要的時間和資源較小
                try {
                    conn.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }

提醒一點,上述程式碼中發現有很多相同的地方,太長了。那麼可以把相同部分提取成一個工具類,下面都是採用工具類的方式演示。工具類會打包給大家,有需要的可以下載看看
這裡寫圖片描述
這裡寫圖片描述
三:CURL操作
插入操作【圖有點不清,建議可拖到新視窗開啟圖片就可以看清】
這裡寫圖片描述
讀取操作
這裡寫圖片描述
刪除
這裡寫圖片描述
修改操作
這裡寫圖片描述

相關推薦

Java操作資料庫jdbc原生方式

引言:Java對資料庫的操作有很多種技術。例如說jdbc,dbutil +C3p0,hibernate,jdbcTemplate等等【這五個都會總結】,到後面的話使用一些高階的框架去操作資料庫,

java操作資料庫模糊查詢

首先,在接口裡新增模糊查詢的方法,程式碼如下: ---------------------------------程式碼開始---------------------------------- package com.dao; import java.util.List; import

java實現SparkSQLjdbc方式程式設計訪問hive資料庫

第一步: 新增maven依賴 <repositories> <repository> <id>scala-tools.org</id> <name>Scala-T

Java操作資料庫方式三Hibernate的使用註解的使用

##概述在hibernate中,通常配置物件關係對映關係有兩種,一種是基於xml的方式,另一種是基於annotation的註解方式。在hibernate4及以後的版本直接使用註解,如果使用hiberna

JDBC(3)JAVA連線資料庫 抽象DAO操作

抽象DAO操作 關於所有的表操作都會對應一些操作,我們都會把這些抽取到對應的DAO中。那麼存在大量的重複操作,是否可以抽出通用的部分,供大家繼承使用。 把DAO的操作先寫成介面,把通用的操作提煉出來。 實現操作 根據主鍵查詢 查詢所有 增加、刪除、修改、記

mysql學習第3篇資料庫增刪改查操作 資料庫操作,資料操作

資料庫之表操作,資料操作 注意的幾點:1.如果你在cmd中書命令的時候,輸入錯了就用\c跳出   2.\s檢視配置資訊

Java操作資料庫語句JDBC基礎

JDBC JDBC Java Database connectivity Java資料庫連線規範(一套介面) 由SUn公司提供的 JDBC四個核心類 DriverManager 建立連線 Connection 連線

JAVA資料庫JDBC)基本操作

一、驅動新增以及資料庫連結。 Class.forName("com.mysql.jdbc.Driver");//驅動載入 Connection conn = DriverManager     .getConnection("jdbc:mysql://lo

android連線Mysql資料庫JDBC方式

開篇之前,提醒一句,記得關閉電腦防火牆,我的Android手機一直連不上電腦MySQL,排查了兩天,結果竟然是電腦防火牆的原因,那股不爽之情,油然而生.切記!!! 一.建立一個資料庫和若干表,並匯入相關資訊.這裡以我之前使用的一個圖書系統的資料庫為例子. 首先假設已經安裝並配置好Mysql.(建議大家安裝W

JDBC操作資料庫查詢資料

以資料庫中查詢圖書資訊,並將資訊顯示在jsp頁面當中為例,下面貼上程式碼片段: (1)在index.jsp頁面程式碼body中只要新增如下一段程式碼: <a href="FindServlet">檢視所有圖書</a> (2)FindServlet.j

通過jdbc操作資料庫新增資料

1、在mysql資料庫中建立圖書資訊表books。 create table books( id integer primary key not null auto_increment, bookname varchar(45) not null defau

JDBC(1)JAVA連線資料庫 基礎知識學習

java連線資料庫 載入驅動類 匯入jar(jar中都是class) 專案名右鍵 屬性中新增JavaBuildPath 應該把資料庫的連線和資源的關閉包裝 把針對表的操作進行包裝。DAO 一張表會和一個類進行對應 列會對應屬性 一條記錄對應物件 java

Java操作資料庫方式二DBCP使用詳解

##概述DBCP的全稱是:DataBase connection pool,翻譯是:資料庫連線池。在Java操作資料庫方式一JDBC使用詳解中說到直接使用JDBC非常消耗資源。為了避免頻繁關閉連結資料庫

第四篇——JDBC操作資料庫修改資料

使用JDBC修改資料庫中的資料,其操作方法是和新增資料差不多的,只不過在修改資料的時候還要用到UPDATE語句來實現的,例如:把圖書資訊id為1的圖書數量改為100,其sql語句是:update book set bookCount=100 where id=1。在實際開發過

Java操作PDFiText超入門

tom stream [] win anti not tsp rowspan war iText是著名的開放項目,是用於生成PDF文檔的一個java類庫。通過iText不僅可以生成PDF或rtf的文檔,而且可以將XML、Html文件轉化為PDF文件。 http://ite

Java操作ExcelPOI簡單例子

comm last pre cto ada tabs cnblogs encrypted hssf 21 /** 22 * 利用POI操作Excel表單 23 * 24 * 需要jar包: 25 * HSSF針對03及以前版本,即.xls後綴

Java DB訪問 JDBC

ack not dst exists throw line null mon select 項目說明 項目采用 maven 組織 ,jdbc 唯一的依賴就是 mysql-connector-java pom 依賴如下: <dependency&g

java面試題----jdbc中使用的設計模式(橋接模式)

connect @override 操作 tro orb his order ng- return 1.JDBC(JavaDatabase Connectivity) JDBC是以統一方式訪問數據庫的API. 它提供了獨立於平臺的數據庫訪問,也就是說,有了JDB

Java web面試多種專案釋出方式

我們在本地釋出web專案時,一般有三種方式: run as server tomcat釋出 使用war包釋出 前兩個我們基本都知道,直到昨天我才知道,原來還有第三種釋出方式: 首先,把編寫好的程式碼進行匯出,並放置在Tomcat的webapps目錄下(為確保通過war

java操作excel常用的兩種方式

***************************************************** Excel是我們平時工作中比較常用的用於儲存二維表資料的,JAVA也可以直接對Excel進行操作,在這篇部落格中將為大家介紹兩種操作Excel的方式,分別為:jx