Java靜態(tài)代碼塊加載驅(qū)動(dòng)代碼實(shí)例
Demo1.funx();
String s=Demo1.string;
靜態(tài)代碼塊 會(huì)在new一個(gè)該類對象時(shí)調(diào)用
或者調(diào)用該類的靜態(tài)方法,靜態(tài)成員變量時(shí)調(diào)用
總之在類加載器將該類加載到內(nèi)存中時(shí) (無論是通過哪種方式) 都會(huì)調(diào)用靜態(tài)代碼塊
靜態(tài)成員變量 靜態(tài)代碼塊永遠(yuǎn)只被初始化一次 無論new多少個(gè)對象
加載類時(shí) 初始化順序 靜態(tài)成員->靜態(tài)代碼塊 ->變量,初始化塊->構(gòu)造函數(shù)
由于靜態(tài)代碼塊永遠(yuǎn)只被加載一次的特性
常被用來加載配置文件 等初始化操作(單例模式)
例子
static { Configuration cfg = new Configuration(); // cfg.configure(); // ��ȡĬ�ϵ������ļ���hibernate.cfg.xml�� // // cfg.configure("hibernate.cfg.xml"); // ��ȡָ��λ�õ������ļ� // sessionFactory = cfg.buildSessionFactory(); // cfg.addResource("cn/itcast/a_helloworld/User.hbm.xml"); // cfg.addClass(User.class); // ȥUser�����ڵİ��в������ΪUser����Ϊ.hbm.xml���ļ� // ��ʼ��SessionFactory sessionFactory = new Configuration()// .configure()// .buildSessionFactory(); }
加載驅(qū)動(dòng)
private static Properties props = null; static{ try { //獲取Property配置 并初始化 加載流到prop中 InputStream inputStream=JdbcUtils.class.getClassLoader().getResourceAsStream("dbconfig.properties"); props=new Properties(); props.load(inputStream); } catch (IOException e) { throw new RuntimeException(); } try { //加載驅(qū)動(dòng)類 Class.forName(props.getProperty("driverClassName")); } catch (ClassNotFoundException e) { throw new RuntimeException(); } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
通過spring boot 設(shè)置tomcat解決 post參數(shù)限制問題
這篇文章主要介紹了通過spring boot 設(shè)置tomcat解決 post參數(shù)限制問題,需要的朋友可以參考下2019-05-05關(guān)于String.format()格式化輸出方式
String.format()是Java的格式化輸出方法,支持多種數(shù)據(jù)類型和格式化選項(xiàng),它在格式化和拼接字符串時(shí)具有較高的靈活性,但效率相對較低,特別是在處理大量數(shù)據(jù)時(shí),在實(shí)際編程中,應(yīng)根據(jù)具體需求選擇合適的字符串拼接方式2024-12-12詳解springboot接口如何優(yōu)雅的接收時(shí)間類型參數(shù)
這篇文章主要為大家詳細(xì)介紹了springboot的接口如何優(yōu)雅的接收時(shí)間類型參數(shù),文中為大家整理了三種常見的方法,希望對大家有一定的幫助2023-09-09java使用Apache工具集實(shí)現(xiàn)ftp文件傳輸代碼詳解
這篇文章主要介紹了java使用Apache工具集實(shí)現(xiàn)ftp文件傳輸代碼詳解,分享了詳細(xì)連接ftp server和上傳文件,下載文件的代碼,以及結(jié)果展示,具有一定借鑒價(jià)值,需要的朋友可以參考下。2017-12-12Java實(shí)現(xiàn)任務(wù)超時(shí)處理方法
任務(wù)超時(shí)處理是比較常見的需求,Java中對超時(shí)任務(wù)的處理有兩種方式,在文中給大家詳細(xì)介紹,本文重點(diǎn)給大家介紹Java實(shí)現(xiàn)任務(wù)超時(shí)處理方法,需要的朋友可以參考下2019-06-06java使用renderer將pdf按頁轉(zhuǎn)換為圖片
這篇文章主要為大家詳細(xì)介紹了java使用renderer將pdf按頁轉(zhuǎn)換為圖片,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12SpringSecurity中的Filter Chain(過濾器鏈)
Spring Security的Filter Chain是由一系列過濾器組成的管道,每個(gè)過濾器執(zhí)行特定的安全功能,Spring Security能夠提供強(qiáng)大而靈活的安全控制機(jī)制,從而保護(hù)你的應(yīng)用程序不受各種網(wǎng)絡(luò)安全威脅的侵害,本文介紹SpringSecurity中的Filter Chain,感興趣的朋友跟隨小編一起看看吧2024-06-06