最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java JDBC自定義封裝工具類的步驟和完整代碼

 更新時間:2021年02月28日 12:08:59   作者:陳明勇1999  
這篇文章主要給大家介紹了關(guān)于Java JDBC自定義封裝工具類的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

封裝JDBC工具類的作用可以優(yōu)化代碼,提高開發(fā)效率

步驟

① 創(chuàng)建配置文件(config.properties),用于存放注冊驅(qū)動和連接數(shù)據(jù)庫時所需要的參數(shù)值

② 自定義一個類(JDBCUtils.java)

③ 實(shí)現(xiàn)構(gòu)造私有方法 private JDBCUtils(){}

④ 聲明所需要的配置變量

private static String driverClass;
private static String url;
private static String username;
private static String password;
private static Connection conn;

⑤ 提供靜態(tài)代碼量,讀取配置文件,并為配置變量賦值,注冊驅(qū)動

⑥ 定義數(shù)據(jù)庫連接方法 public static Connection getConnection();

⑦ 定義釋放資源方法(兩個)

// 查詢操作時所使用的的釋放資源方法
public static void close(Connection conn, Statement st, ResultSet rs);
// 增刪改操作時所使用的的釋放資源方法
public static void close(Connection conn, Statement st)

完整代碼

package com.cmy.utils;

import java.io.InputStream;
import java.sql.*;
import java.util.Properties;

/**
 * JDBC工具類
 * @author ChenMingYong
 */
public class JDBCUtils {
	/**
	 * 1.私有構(gòu)造方法
	 */
	private JDBCUtils(){}
	
	/**
	 * 2.聲明所需要的配置變量
	 */
	private static String driverClass;
	private static String url;
	private static String username;
	private static String password;
	private static Connection conn;
	
	// 3.提供靜態(tài)代碼塊,讀取配置文件的信息,為變量賦值,注冊驅(qū)動
	static {
		try{
			// 讀取配置文件的信息,為變量賦值
			InputStream is = JDBCUtils.class.getClassLoader().getResourceAsStream("config.properties");
			Properties prop = new Properties();
			prop.load(is);
			driverClass = prop.getProperty("driverClass");
			url = prop.getProperty("url");
			username = prop.getProperty("username");
			password = prop.getProperty("password");
			// 注冊驅(qū)動
			Class.forName(driverClass);
		}
		catch (Exception e){
			e.printStackTrace();
		}
	
	}
	
	/**
	 * 4.提供數(shù)據(jù)庫連接方法
	 * @return
	 */
	public static Connection getConnection(){
		try {
			conn = DriverManager.getConnection(url, username, password);
		}
		catch (Exception e){
			e.printStackTrace();
		}
		return conn;
	}
	
	/**
	 * 5.查詢操作時所使用的的釋放資源方法
	 * @param conn
	 * @param st
	 * @param rs
	 */
	public static void close(Connection conn, Statement st, ResultSet rs){
		if(conn != null){
			try{
				conn.close();
			}
			catch (SQLException e){
				e.printStackTrace();
			}
		}
		if(st != null){
			try{
				st.close();
			}
			catch (SQLException e){
				e.printStackTrace();
			}
		}
		if(rs != null){
			try{
				rs.close();
			}
			catch (SQLException e){
				e.printStackTrace();
			}
		}
	}
	
	/**
	 * 5.增刪改操作時所使用的的釋放資源方法
	 * @param conn
	 * @param st
	 */
	public static void close(Connection conn, Statement st){
		if(conn != null){
			try{
				conn.close();
			}
			catch (SQLException e){
				e.printStackTrace();
			}
		}
		if(st != null){
			try{
				st.close();
			}
			catch (SQLException e){
				e.printStackTrace();
			}
		}
	}
	
}

總結(jié)

到此這篇關(guān)于Java JDBC自定義封裝工具類的文章就介紹到這了,更多相關(guān)Java JDBC自定義封裝類內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • YGC前后新生代是否變大分析詳解

    YGC前后新生代是否變大分析詳解

    要解釋這個問題,我們先要弄清楚YGC的過程,parNew是新生代的gc算法,簡單來說從gc roots開始掃描對象,當(dāng)掃到一個只要是屬于新生代的對象就將其挪到to space,但是老的對象還不會做釋放,直到gc完成之后再看是否釋放老的對象
    2022-01-01
  • Java三種求水仙花數(shù)的方法

    Java三種求水仙花數(shù)的方法

    本篇文章通過求水仙花數(shù)的實(shí)例來讓大家對JAVA求數(shù)的概念和方法有更深入的理解和應(yīng)用,學(xué)習(xí)參考下吧。
    2018-02-02
  • Mybatis自定義Sql模板語法問題

    Mybatis自定義Sql模板語法問題

    這篇文章主要介紹了Mybatis自定義Sql模板語法問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-09-09
  • 關(guān)于Java中數(shù)組切片的幾種方法(獲取數(shù)組元素)

    關(guān)于Java中數(shù)組切片的幾種方法(獲取數(shù)組元素)

    這篇文章主要介紹了關(guān)于Java中數(shù)組切片的幾種方法(獲取數(shù)組元素),切片是數(shù)組的一個引用,因此切片是引用類型,在進(jìn)行傳遞時,遵守引用傳遞的機(jī)制,需要的朋友可以參考下
    2023-05-05
  • java IO流之轉(zhuǎn)換流的具體使用

    java IO流之轉(zhuǎn)換流的具體使用

    轉(zhuǎn)換流可以將一個字節(jié)流包裝成字符流,或者將一個字符流包裝成字節(jié)流,本文主要介紹了java IO流之轉(zhuǎn)換流的具體使用,具有一定的參考價值,感興趣的可以了解一下
    2024-01-01
  • springboot之redis cache TTL選項(xiàng)的使用

    springboot之redis cache TTL選項(xiàng)的使用

    這篇文章主要介紹了springboot之redis cache TTL選項(xiàng)的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • 理解Java設(shè)計模式編程中的迪米特原則

    理解Java設(shè)計模式編程中的迪米特原則

    這篇文章主要介紹了Java設(shè)計模式編程中的迪米特原則,迪米特原則旨在降低類與類之間的耦合,需要的朋友可以參考下
    2016-02-02
  • SpringBoot?2.x?接入非標(biāo)準(zhǔn)SSE格式大模型流式響應(yīng)的實(shí)戰(zhàn)解決方案

    SpringBoot?2.x?接入非標(biāo)準(zhǔn)SSE格式大模型流式響應(yīng)的實(shí)戰(zhàn)解決方案

    本文介紹了在SpringBoot2.7.3環(huán)境中接入非標(biāo)準(zhǔn)SSE格式大模型流式響應(yīng)的實(shí)戰(zhàn)解決方案,通過自定義實(shí)現(xiàn),解決了大模型返回數(shù)據(jù)格式不符合標(biāo)準(zhǔn)SSE規(guī)范的問題,關(guān)鍵步驟包括引入Gradle依賴、配置WebClient、處理粘包、格式兼容和雙重過濾機(jī)制,感興趣的朋友跟隨小編一起看看吧
    2025-02-02
  • MybatisPlus代碼生成器使用示例

    MybatisPlus代碼生成器使用示例

    MyBatis-Plus自動化的生成與數(shù)據(jù)庫表對應(yīng)的Java代碼文件,本文主要介紹了MybatisPlus代碼生成器使用示例,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • SpringBoot+Vue跨域配置(CORS)問題得解決過程

    SpringBoot+Vue跨域配置(CORS)問題得解決過程

    在使用 Spring Boot 和 Vue 開發(fā)前后端分離的項(xiàng)目時,跨域資源共享(CORS)問題是一個常見的挑戰(zhàn),接下來,我將分享我是如何一步步解決這個問題的,包括中間的一些試錯過程,希望能夠幫助到正在經(jīng)歷類似問題的你
    2024-08-08

最新評論

建湖县| 苍南县| 离岛区| 徐汇区| 潮州市| 曲靖市| 吐鲁番市| 娄底市| 定远县| 绥宁县| 龙里县| 盐边县| 久治县| 浠水县| 都兰县| 信阳市| 遂昌县| 星子县| 贵阳市| 措美县| 肃北| 海阳市| 浦北县| 会宁县| 丹江口市| 寻甸| 基隆市| 曲周县| 武强县| 曲沃县| 沂源县| 峨眉山市| 都江堰市| 揭阳市| 晋城| 泰兴市| 西华县| 武山县| 邢台市| 江口县| 烟台市|