JDBC----Dao模式
Dao模式:
1. 新建一個dao的介面, 裡面宣告資料庫訪問規則.
2. 新建一個dao的實現類,具體實現早前定義的規則.
3. 直接使用實現.
程式碼如下:
UserDao:
package com.test.dao; /** * 定義操作資料庫的方法 * <p>Title: UserDao</p> * <p>Description: </p> * <p>Company: www.itcast.cn</p> * @version 1.0 */ public interface UserDao { //查詢 void findAll(); }
UserDaoImpl:
package com.test.dao.impl; import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import com.test.dao.UserDao; import com.test.util.JDBCUtil; public class UserDaoImpl implements UserDao { /** * 查詢 * <p>Title: findAll</p> * <p>Description: </p> * @see com.test.dao.UserDao#findAll() */ Connection connection = null; Statement statement = null; ResultSet resultSet = null; @Override public void findAll() { try { connection = JDBCUtil.getConn(); statement = connection.createStatement(); String sql ="select * from user"; resultSet = statement.executeQuery(sql); while(resultSet.next()){ String username = resultSet.getString("username"); String password = resultSet.getString("password"); System.out.println("username="+username+",password="+password); } } catch (Exception e) { // TODO: handle exception }finally{ JDBCUtil.close(connection, resultSet, statement); } } }
JunitTest:
package com.test.example;
import org.junit.Test;
import com.test.dao.UserDao;
import com.test.dao.impl.UserDaoImpl;
public class JunitTest {
//查詢
@Test
public void testFindAll(){
UserDao dao = new UserDaoImpl();
dao.findAll();
}
}
JDBCUtil:
package com.test.util; import java.io.FileInputStream; import java.io.InputStream; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; import java.util.Properties; public class JDBCUtil { static String driverClass = null; static String url = null; static String name = null; static String password = null; //讀取jdbc.properties static{ try { //1.建立一個屬性配置物件 Properties properties = new Properties(); //1.對應檔案位於工程根目錄 //InputStream is = new FileInputStream("jdbc.properties"); //2.使用類載入器,讀取drc下的資原始檔 對應檔案位於src目錄底下 建議使用 InputStream is = JDBCUtil.class.getClassLoader().getResourceAsStream("jdbc.properties"); //2.匯入輸入流,抓取異常 properties.load(is); //3.讀取屬性 driverClass = properties.getProperty("driverClass"); url = properties.getProperty("url"); name = properties.getProperty("name"); password = properties.getProperty("password"); } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } } /** * 註冊驅動 建立引數 * <p>Title: close</p> * <p>Description: </p> * @param connection * @param resultSet * @param statement */ public static Connection getConn(){ Connection connection = null; //2. 建立連線 引數一: 協議 + 訪問的資料庫 , 引數二: 使用者名稱 , 引數三: 密碼。 try { //Class.forName(driverClass);可寫可不寫 //Class.forName(driverClass); connection = DriverManager.getConnection(url, name, password); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); } return connection; } /** * 釋放資源 * <p>Title: close</p> * <p>Description: </p> * @param connection * @param resultSet * @param statement */ public static void close(Connection connection,ResultSet resultSet,Statement statement){ closeRS(resultSet); closeSt(statement); closeConn(connection); } public static void close(Connection connection,Statement statement){ closeSt(statement); closeConn(connection); } private static void closeRS(ResultSet resultSet){ try { if(resultSet !=null){ resultSet.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { resultSet = null; } } private static void closeSt(Statement statement){ try { if(statement !=null){ statement.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { statement = null; } } private static void closeConn(Connection connection){ try { if(connection !=null){ connection.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally { connection = null; } } }
jdbc.properties:
driverClass=com.mysql.jdbc.Driver
url = jdbc:mysql://localhost/jdbc
name = root
password = root
資料庫:
執行結果:
相關推薦
JDBC------Dao模式(二)
jdbc.properties: driverClass=com.mysql.jdbc.Driver url = jdbc:mysql://localhost/jdbc name = root password = root JDBCUtil: package com
JDBC----Dao模式(一)
Dao模式: 1. 新建一個dao的介面, 裡面宣告資料庫訪問規則. 2. 新建一個dao的實現類,具體實現早前定義的規則. 3. 直接使用實現. 程式碼如下: UserDao: package com.test.dao; /** * 定義操作資料庫的
JDBC----Dao模式
Dao模式: 1. 新建一個dao的介面, 裡面宣告資料庫訪問規則. 2. 新建一個dao的實現類,具體實現早前定義的規則. 3. 直接使用實現. 程式碼如下: UserDao: package com.test.dao; /** * 定義操作資料庫的
Java Dao模式通過JDBC連接數據庫的操作
gte geos lfa dao模式 inb aov jdbc連接 you 5% %5B%E7%B3%BB%E7%BB%9F%E5%BC%80%E5%8F%91%5D%20%E5%9F%BA%E4%BA%8EAnsible%E7%9A%84%E4%BA%A7%E5%93%8
JDBC 入門介紹以及 DAO 模式簡單介紹
JDBC(Java Database Connectivity) 使用步驟 下載 JDBC 相應資料庫的 jar 包加入專案下的 lib 資料夾中 此處使用 mysql,對應 mysql 的 jar 包下載地址: mysql-connector-java-8.0.13.jar
DAO模式+JDBC
實現DAO模式的步驟 建立實體類包Entity 建立DAO包(DAO包中包括實際需要的介面和對應的實現類)
javaweb:JDBC連線MYSQL資料庫詳解,使用JDBC對資料庫進行CRUD操作以及DAO模式的介紹
JDBC簡介: JDBC全稱為:Java DataBase Connectivity(java資料庫連線)。 SUN公司為了簡化、統一對資料庫的操作,定義了一套Java操作資料庫的規範,稱之為JDBC。 組成JDBC的2個包: 連結:https://pan
JDBC結合DAO模式的簡單實現
文章目錄 JDBC結合DAO模式的簡單實現 1. 配置檔案 2. 與MySQL伺服器連線的封裝 3. 宣告interface 4. 實現implements 5. 測試Test
java資料庫 JDBC的Dao模式(適合初學者)
java 連線資料庫首先要匯入一個jar包 我們來了解一下什麼是jdbc 其實JDBC(Java DataBase Connectivity,java資料庫連線)是一種用於執行SQL語句的Java AP 讀下面程式碼需要大概瞭解Statement常用的方法: Resu
Java 15---JDBC批處理,事務,併發,DAO模式
導讀 1.JDBC批處理 2.JDBC事務處理 3.事務併發問題 4.JDBCTemplate 5.DAO模式 JDBC批處理 新增10000個使用者到使用者表 批處理:一次傳送多個數據給伺服器,伺服器一個一個執行,提高效率 addBatch():把語句,引數新增到Pre
簡單學習 JDBC的DAO模式
import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.util.ArrayList; import java.util.List; import com.or
JDBC學習總結2(dao模式)更新中
011.dao模式 1.dao模式; data access object; 一個典型的dao模式應該包括的部分有; vo:值物件;value object dao介面:封裝的是所有資
java jdbc連線Mysql資料庫Dao模式下的帶配置檔案的(properies)
為什麼要使用properies配置檔案呢?因為當我們吧專案部署到伺服器後,如果想到修改資料庫的連線時,比較麻煩,因為伺服器上佈置的是類檔案,也就是編譯好的檔案,當我們要是修改連線時,一旦,修改就的開啟類檔案但是,資料庫是沒有開發軟體的,所以此時就需要用properies配置檔案,properies記事本就
JDBC---DAO經典模式 實現對資料庫的增、刪、改、查
JDBC(Java Data Base Connection)的作用是連線資料庫 先看下jdbc連線SQLServer資料庫的簡單例子 程式碼實現(FirstJDBC): package com.jdbc; import java.sql.Connection; im
面向對象DAO模式
實體 div 邏輯 and 實體類 nbsp class row 新建 DAO模式編寫數據訪問層代碼步驟? 1、 接口 增、刪、改、查的方法 方法的返回類型為泛型集合 Int rows=select語句的條數 If(rows&
DAO模式編寫數據訪問層代碼步驟?
rda select語句 bsp dstat 連接 泛型集合 sql語句 nbsp 新建項目 1、 接口 增、刪、改、查的方法 方法的返回類型為泛型集合 Int rows=select語句的條數 If(rows>0) 方
DAO模式
ron 對數 oot get 字節 put 方法的參數 rpo 字符串 JDBC封裝 優點: 隔離細節 降低代碼間耦合性 提高代碼可擴展性和維護性 附註: DAO模式提供了訪問關系型數據系統所需操作的接口,將數據訪問和業務邏輯分開,對
Java中Dao模式中Dao的數據庫操作(BaseDao的寫法)
nec roo sql rac 127.0.0.1 關閉 ron [] cnblogs Dao模式是Java面向設計時的一種模式。而Dao中的BaseDao無非是對數據進行CURD(增刪改查),下面是最常用的連接,增刪改查的方法。 1 package dao;
JDBC—DAO
connect con cut aps ont es2017 更新 底層 面向接口 一、JDBC 什麽是JDBC?JAVA DataBase Connectivity (Java 數據庫連接技術)由Java編寫的一組類和接口組成,為各種類型的數據庫提供統一的訪問
mysql jdbc url模式 正則表示式
https://blog.csdn.net/youcijibi/article/details/77965487?locationNum=7&fps=1 jdbc:mysql://[host][,failoverhost...][:port]/[database] » [?propertyName1