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

一文詳解Spring加載properties文件的方式

 更新時間:2022年06月11日 15:08:26   作者:夏志121  
這篇文章將通過一些示例為大家詳細介紹Spring加載properties文件的幾種方式,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下

spring第三方資源配置管理

  • DruidDataSource
  • ComboPooledDataSource

一、druid的資源配置管理

導(dǎo)入druid的坐標(biāo):

        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.1.16</version>
        </dependency>

App運行輸出druid:

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
 
import javax.sql.DataSource;
 
public class App {
    public static void main(String[] args) {
        ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");
        DataSource dataSource = (DataSource) ctx.getBean("dataSource");
        System.out.println(dataSource);
 
    }
}

applicationContext.xml配置:

配置數(shù)據(jù)源對象作為spring管理的bean

<!--    管理DruidDataSource對象-->
   <bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource">
           <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
           <property name="url" value="jdbc:mysql://localhost:3306/spring_db"/>
           <property name="username" value="root"/>
           <property name="password" value="root"/>
   </bean>

執(zhí)行結(jié)果:

二、c3p0資源配置管理

maven遠程倉庫中找:

導(dǎo)入c3p0的坐標(biāo):

        <dependency>
            <groupId>c3p0</groupId>
            <artifactId>c3p0</artifactId>
            <version>0.9.1.2</version>
        </dependency>

c3p0還需要mysql的驅(qū)動,導(dǎo)入mysql的坐標(biāo):

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>

App運行輸出與上面的一樣。

applicationContext.xml配置:

  <!--c3p0連接池對象-->
       <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
           <property name="driverClass" value="com.mysql.jdbc.Driver"/>
           <property name="jdbcUrl" value="jdbc:mysql://localhost:3306/spring_db"/>
           <property name="user" value="root"/>
           <property name="password" value="root"/>
           <property name="maxPoolSize" value="1000"/>
       </bean>

也可以配置最大連接對象和其他需要配置數(shù)據(jù)。

執(zhí)行結(jié)果:

三、加載properties文件

1、開啟context命名空間,總共5處標(biāo)紅的地方需要修改為context。

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="
            http://www.springframework.org/schema/beans
            http://www.springframework.org/schema/beans/spring-beans.xsd
            http://www.springframework.org/schema/context
            http://www.springframework.org/schema/context/spring-context.xsd">

2、使用context命名空間,加載指定properties文件

<context:property-placeholder location="jdbc.properties"/>

properties配置文件,配置時要加jdbc,不然會和系統(tǒng)環(huán)境變量沖突,系統(tǒng)優(yōu)先級高:

jdbc.driver=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://127.0.0.1:3306/spring_db
jdbc.username=root
jdbc.password=root

3、使用${ }讀取加載的properties文件中的屬性值

說明:idea自動識別${ }加載的屬性值,需要手工點擊才可以查閱原始書寫格式

<property name="driverClassName" value="${jdbc.driver}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>

不加載系統(tǒng)屬性

可通過此種方法不加載系統(tǒng)屬性,就不會和系統(tǒng)屬性沖突:

system-properties-mode屬性:是否加載系統(tǒng)屬性

<context:property-placeholder location="jdbc.properties" system-properties-mode="NEVER"/>

加載多個properties文件

用逗號分隔可加載多個properties文件:

<context:property-placeholder location="jdbc.properties,jdbc2.properties"/>

加載所有properties文件

<context:property-placeholder location="*.properties"/>

加載properties文件標(biāo)準(zhǔn)格式

classpath:*.properties:設(shè)置加載當(dāng)前工程類路徑中的所有properties文件

<context:property-placeholder location="classpath:*.properties"/>

從類路徑或jar包中搜索并加載properties文件

classpath*:*.properties:設(shè)置加載當(dāng)前工程類路徑和當(dāng)前工程所依賴的所有jar包中的所有properties文件

<context:property-placeholder location="classpath*:*.properties"/>

以上就是一文詳解Spring加載properties文件的方式的詳細內(nèi)容,更多關(guān)于Spring加載properties文件的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • springboot前后端分離集成CAS單點登錄(統(tǒng)一認證)

    springboot前后端分離集成CAS單點登錄(統(tǒng)一認證)

    單點登錄是一種身份認證和授權(quán)技術(shù),允許用戶在多個應(yīng)用系統(tǒng)中使用同一套用戶名和密碼進行登錄,本文主要介紹了springboot前后端分離集成CAS單點登錄,具有一定的參考價值,感興趣的可以了解一下
    2024-09-09
  • Spring Boot加密配置文件方法介紹

    Spring Boot加密配置文件方法介紹

    這篇文章主要介紹了SpringBoot加密配置文件,近期在對開發(fā)框架安全策略方面進行升級優(yōu)化,提供一些通用場景的解決方案,本文針對配置文件加密進行簡單的分享
    2023-01-01
  • java代理 jdk動態(tài)代理應(yīng)用案列

    java代理 jdk動態(tài)代理應(yīng)用案列

    java代理有jdk動態(tài)代理、cglib代理,這里只說下jdk動態(tài)代理,jdk動態(tài)代理主要使用的是java反射機制,需要了解的朋友可以參考下
    2012-11-11
  • Spring用AspectJ開發(fā)AOP(基于Annotation)

    Spring用AspectJ開發(fā)AOP(基于Annotation)

    這篇文章主要介紹了Spring用AspectJ開發(fā)AOP(基于Annotation),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2019-10-10
  • Java實現(xiàn)的雙向匹配分詞算法示例

    Java實現(xiàn)的雙向匹配分詞算法示例

    這篇文章主要介紹了Java實現(xiàn)的雙向匹配分詞算法,結(jié)合完整實例形式詳細分析了雙向匹配分詞算法的原理與java實現(xiàn)技巧,需要的朋友可以參考下
    2017-12-12
  • java持久層框架mybatis防止sql注入的方法

    java持久層框架mybatis防止sql注入的方法

    下面小編就為大家?guī)硪黄猨ava持久層框架mybatis防止sql注入的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • java.lang.NullPointerException 如何處理空指針異常的實現(xiàn)

    java.lang.NullPointerException 如何處理空指針異常的實現(xiàn)

    這篇文章主要介紹了java.lang.NullPointerException 如何處理空指針異常的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • SpringBoot無法解析parameter參數(shù)問題的解決方法

    SpringBoot無法解析parameter參數(shù)問題的解決方法

    使用最新版的 Springboot 3.2.1(我使用3.2.0)搭建開發(fā)環(huán)境進行開發(fā),調(diào)用接口時出現(xiàn)奇怪的錯,本文小編給大家介紹了SpringBoot無法解析parameter參數(shù)問題的原因及解決方法,需要的朋友可以參考下
    2024-04-04
  • Java設(shè)計模式中的建造者(Builder)模式解讀

    Java設(shè)計模式中的建造者(Builder)模式解讀

    這篇文章主要介紹了Java設(shè)計模式中的建造者(Builder)模式解讀, 建造者模式是一種創(chuàng)建對象的設(shè)計模式,它通過將對象的構(gòu)建過程分解為多個步驟,并使用一個建造者類來封裝這些步驟,從而使得對象的構(gòu)建過程更加靈活和可擴展,需要的朋友可以參考下
    2023-10-10
  • Java?HashMap詳解及實現(xiàn)原理

    Java?HashMap詳解及實現(xiàn)原理

    Java?HashMap是Java集合框架中最常用的實現(xiàn)Map接口的數(shù)據(jù)結(jié)構(gòu),它使用哈希表實現(xiàn),允許null作為鍵和值,可以存儲不同類型的鍵值對,在Java中,HashMap被廣泛應(yīng)用于各種場景,如緩存、數(shù)據(jù)庫連接池、路由器等,文中有詳細的代碼示例,需要的朋友可以參考下
    2023-05-05

最新評論

泸溪县| 东乡族自治县| 个旧市| 万安县| 同仁县| 寿光市| 安岳县| 商河县| 外汇| 盱眙县| 水富县| 乌鲁木齐市| 南平市| 平顺县| 汶上县| 宁南县| 祥云县| 东丽区| 丽江市| 印江| 酉阳| 长海县| 左云县| 富川| 岳池县| 五指山市| 资兴市| 德格县| 宁都县| 嘉义市| 岳阳县| 密云县| 全椒县| 灵宝市| 花垣县| 互助| 揭西县| 淮南市| 江门市| 清苑县| 重庆市|