1. 程式人生 > >Java Web的資料庫操作

Java Web的資料庫操作

一、JDBC技術

1、JDBC簡介

       JDBC是Java程式與資料庫系統通訊的標準API,它定義在JDK的API中,通過JDBC技術,Java程式可以非常方便地與各種資料庫互動,JDBC在Java程式與資料庫系統之間假期了一座橋樑。

       JDBC由一組用Java語言編寫的類和介面組成,它對資料庫的操作提供了基本方法,但由於資料庫種類跟多且多有不同,所以對資料庫的細節操作由資料庫廠商進行實現,且廠商需要提供資料庫的驅動程式,下圖為Java程式與資料庫相互動的示意圖:

2、JDBC連線資料庫的過程

l  下載驅動包

在JDK中,不包含資料庫的驅動程式,使用JDBC操作資料庫需要實現下載資料庫廠商提供的驅動包,並匯入到開發環境中。

l  註冊資料庫驅動

連線資料庫前,需要將資料庫廠商提供的資料庫驅動註冊到JDBC的驅動管理器中,一般是通過將資料庫驅動類載入到JVM來實現的,例如連線MySQL資料庫:

              Class.forName(“com.mysql.jdbc.Driver”);

l  構建資料庫連線URL

URL由資料庫廠商制定,不同資料庫它的URL有所區別,但都符合一個基本的格式,即“JDBC協議+IP地址或域名+埠+資料庫名稱”,例如MYSQL資料庫為”jdbc:mysql://localhost:8080/test”。

前兩步中不同資料庫有所差別,不同資料庫連線請參考這篇文章:

l  獲取Connection物件

通過驅動管理器獲得資料庫的連線Connection,只有建立此物件後才可以對資料庫進行操作,方法如下:

DriverManager.getConnection(url , username , password);

       下面是一個完整的連線資料庫的例子:

[java] view plain copy  print?
  1. try {  
  2.                     //載入資料庫驅動,註冊到去送管理器
  3.                     Class.forName("com.mysql.jdbc.Driver");  
  4.                     String url = "jdbc:mysql://localhost:8080/test"
    ;  
  5.                     String username = "admin";  
  6.                     String password = "123456";  
  7.                     Connection conn = DriverManager.getConnection(url , username , password);  
  8.                     if (conn != null)   
  9.                            System.out.println("資料庫連線成功!");  
  10.                     else
  11.                            System.out.println("資料庫連線失敗!");  
  12.                     //完成後記得關閉資料庫連線
  13.                     conn.close();  
  14.              } catch (ClassNotFoundException e) {  
  15.                     e.printStackTrace();  
  16.              } catch (SQLException e) {  
  17.                     e.printStackTrace();  
  18.              }  

二、JDBC API

       JDBC是Java程式操作資料庫的標準,它由一組用Java語言編寫的類和介面組成,Java通過JDBC可以對多種關係資料庫進行統一訪問。下面介紹主要類和介面的作用,詳細方法請參考J2SE的API。

1、 Connection介面

       與特定資料庫的連線會話,只有獲得特定資料庫的連線物件才能訪問資料庫,操作資料庫中的資料表、檢視和儲存過程等。

方法宣告

說明

Close()

立即釋放Connection物件的資料庫連線佔用的JDBC資源

Commit()

提交事務,並釋放Connection物件當前持有的所有資料庫鎖

createStatement()

建立Statement物件來將SQL語句傳送到資料庫

PreparedStatement

將引數化的SQL語句預編譯並存儲在PreparedStatement物件中

2、DriverManager類

       主要作用與使用者及驅動程式之間,它是JDBC中的管理層,通過它可以管理資料庫廠商提供的驅動程式,並建立應用程式與資料庫之間的連線。

方法宣告

說明

getConnection(String url)

根據指定資料庫連線URL,建立Connection

getConnection(String url , Properties info)

根據指定資料庫連線URL及資料庫連線屬性資訊建立資料庫連線Connection,引數info為資料庫連線屬性

getConnection(url,un,pwd)

根據指定資料庫連線URL,使用者名稱和密碼連線資料庫

getDrivers()

獲取當前DriverManager中已載入的所有驅動程式

3、 Statement介面

Statement介面封裝了執行SQL語句和獲取查詢介面的基本方法。

方法宣告

說明

AddBatch(String sql)

將SQL語句新增到Statement物件的當前命令列表中,用於SQL命令的批處理

clearBatch()

清空Statement對喜愛那個的命令列表

Close()

立即釋放Statement物件的資料庫和JDBC資源,而不是等待該物件自動關閉時執行

Execute(String sql)

執行指定的SQL語句,若SQL返回結果,該方法返回true,否則返回false

executeBatch()

將一批SQL命令提交給資料庫執行,返回更新計陣列成的資料

executeQuery(String sql)

執行查詢型別的sql語句,該方法返回查詢所獲取的結果集ResultSet

executeUpdate(String sql)

執行SQL語句中DML型別(insert、update、delete)的SQL語句,返回更新所影響的行數

getConnection()

獲取生成Statement對喜愛那個的Connection物件

4、PreparedStatement介面

       Statement介面封裝了JDBC執行SQL語句的方法,但在實際開發過程中,SQL語句往往需要將程式中的變數做查詢條件引數等。使用Statement介面進行操作過於繁瑣且存在安全缺陷。而PreparedStatement介面繼承與Statement介面,且對帶有引數SQL語句的執行操作進行了擴充套件。應用於PreparedStatement介面中的SQL語句可以使用佔位符”?”來代替SQL語句中的引數,然後再對其進行賦值。

方法宣告

說明

setBinaryStream(int x , InputStream s)

將輸入流s作為SQL語句中的引數值,x為引數位置索引

setBoolean(int x , Boolean b)

將布林值b作為SQL語句中的引數值,x為引數位置索引

SetByte

……

setInt

……

等等。。。。。。

……

5、ResultSet介面

       ResultSet物件封裝了資料查詢的結果集,它包含了符合SQL語句的所有行,針對Java中的資料型別提供了一套getXXX()的方法,通過這些方法可以獲取每一行中的資料。ResultSet還提供了游標的功能,通過游標可以自由定位到某一行中的資料。

方法宣告

說明

Absolute(int row)

游標移動到ReulstSet物件的給定行編號

afterLast()

游標移動到最後一行後,如果結果集中不包含任何行,則該方法無效

beforFirst()

立即釋放ResultSet對喜愛那個的資料庫和JDBC資源

deleteRow()

刪除當前行

First()

游標移動到第一行

getString(String columnLable)

以String的方式獲取ResultSet物件當前行中指定列的值,引數為列名稱

getBinaryStream(String colunmLable)

你懂得

getInt(String columnLable)

你懂得

isClosed()

判斷ResultSet對喜愛那個是否已關閉

Last()

移動到最後一行

Next()

移動到下一行,若新行無效則返回false

Previous()

移動到上一行,若新行無效則返回false

相關推薦

java web資料庫操作

這是自己初期學習java  mvc模式時整理的jdbc連線資料庫的程式碼,資料庫為mysql ConnDB是基礎類,封裝了連線資料庫需要的一些資訊。 package com.hsp.model; im

java--DBUtils資料庫操作工具包

O-R Mapping簡介 什麼是O-R Mapping Object(物件)來對映Ralation(關係,表) 常用O-R Mapping對映工具 Hibernate Commons DbUtils(只是對JDBC簡單封裝) 簡介 common

Java Web如何操作Cookie的新增修改和刪除

一、Cookie是什麼 Cookie是伺服器存放在客戶端瀏覽器上的一些小資料,可以使用Cookie完成與伺服器的一些互動動作。伺服器可以通過HTTP響應頭將Cookie傳送給瀏覽器,而瀏覽器如果支援儲存Cookie,則將HTTP響應頭資訊中的Cookie內容存放到瀏覽器中。

java連線資料庫操作2--防止sql注入

sql注入 概念 所謂sql注入,即使用者輸入的字串和我們的sql結合產生預判之外的結果,比如下面這段判斷使用者名稱密碼是否正確的程式碼 String sql = "SELECT * FROM use

Java Web開發】關於資料庫操作

1.mysql連線資料庫並建立資料庫連線物件 第一種: Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/javaweb?user=root&password=welcom123");

Java Web 的金倉資料庫操作(一)--資料庫的連線

從今天開始進行金倉資料庫的大作業。首先宣告,金倉資料庫與現在主流的Oracle、MySQL、SQL Server等資料庫相比,還是有差距的,所以,如果不是特別需要使用金倉資料庫去完成一些工作或者特意練習自己修正Bug的能力,而只是作為入門去學習資料庫的知識,還是強烈不推薦金倉資料庫。博主希望讀者在閱

Java Web----Java Web資料庫操作(一)

Java Web的資料庫操作 一、JDBC技術 1、JDBC簡介        JDBC是Java程式與資料庫系統通訊的標準API,它定義在JDK的API中,通過JDBC技術,Java程式可以非常方便

Java Web資料庫操作

一、JDBC技術 1、JDBC簡介        JDBC是Java程式與資料庫系統通訊的標準API,它定義在JDK的API中,通過JDBC技術,Java程式可以非常方便地與各種資料庫互動,JDBC在Java程式與資料庫系統之間假期了一座橋樑。       

java web操作Access資料庫

Microsoft Office Access是由微軟釋出的關係資料庫管理系統。它結合了 MicrosoftJet Database Engine 和 圖形使用者介面兩項特點,是 Microsoft Office 的系統程式之一。JDK1.8增加了很多新特性,但不再包含acc

新手小白Linux(Centos6.5)部署java web項目(mysql5.7安裝及相關操作

UNC cancel linux系統安裝 temporary tran sch statement current datadir 一、安裝   參考:https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yu

新手小白Linux(Centos6.5)部署java web項目(mongodb4.0.2安裝及相關操作

read har space 創建 縮進 路徑 .org font url 紅帽企業或CentOS的Linux上安裝MongoDB的社區版: https://docs.mongodb.com/manual/tutorial/install-mongodb-on-red-ha

JAVA WEB JDBC連線資料庫

桂 林 理 工 大 學 實  驗  報  告 班級   軟體16-1班   學號 3162052051116  姓名 張識虔   同組實驗者     &

簡單Java類和資料庫操作及javafx的結合小專案

先圖為上   秦時明月漢時關,萬里長征人未還,妙呀,甚是..   1.開始 1.專案目的:   開發工具: Idea + Mysql + JAVASE   1.其實簡單來說就是實現兩張資料表的基本操作,     1.新增     2. 刪除     3.修改

Java嵌入式資料庫H2學習總結(二)——在Web應用程式中使用H2資料庫

一、搭建測試環境和專案 1.1、搭建JavaWeb測試專案   建立一個【H2DBTest】JavaWeb專案,找到H2資料庫的jar檔案,如下圖所示:      H2資料庫就一個jar檔案,這個Jar檔案裡面包含了使用JDBC方式連線H2資料庫時使用的驅動類,將"h2-1.4.183.jar"加入到

6.JAVA語言基礎部分--資料庫操作

操作資料資料流程:得到Connecnt->獲取Statement物件->執行sql語句返回ResultSet 1.通過DriverManager.getConnection(“jdbc:sqlserver://127.0.0.1:1433;DatabaseName=temp2”, "sa", "

java連線並操作mongodb資料庫(增、刪、查、改)

文末附有原始碼下載地址 package com.mongo.controller; import com.mongodb.*; import java.net.UnknownHostException; import java.util.Date; import java.util.Se

j ava程式設計師從笨鳥到菜鳥之(七)一—java資料庫操作

分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!http://blog.csdn.net/jiangjunshow 也歡迎大家轉載本篇文章。分享知識,造福人民,實現我們中華民族偉大復興!        

java最方便的資料庫操作

connDB.properties DB_CLASS_NAME=com.mysql.jdbc.Driver DB_URL=jdbc:mysql://127.0.0.1:3306/webdb?user=root&password=root&useUnicode=true

Selenium Java Web 自動化實踐總結(六)元素操作例項

先上介面和html程式碼,頁面包含按鈕,單選框,複選框,下拉框,輸入框這幾種頁面常用元素 html程式碼如下 <html> <head>演示用html</head> <body> <br><br><br>

java web檔案相關操作

一. 檔案上傳 (1)使用FileUtils.copyInputStreamToFile上傳,若上傳目錄不存在,工具類會幫忙建立目錄 /** * @Title: roadFileAddUpload * @Description: 新增多個檔案上傳功能 * @param myf