ホームページ  >  記事  >  Java  >  Spring はプロパティ ファイルをどのように読み取るのでしょうか? (コード付き)

Spring はプロパティ ファイルをどのように読み取るのでしょうか? (コード付き)

不言
不言オリジナル
2018-09-27 14:43:023294ブラウズ

この記事の内容は、Spring がプロパティ ファイルをどのように読み取るかについてです。 (コードを添付します)。困っている友人が参考になれば幸いです。

問題:

将来の変更を容易にするために、ページ上の必要なプロパティの名前を読み取る必要があります。

解決策:

Spring PropertiesFactoryBean を使用してプロパティを読み取ることができるため、jdk の Properties クラスを通じて情報を読み取るプログラムを作成する必要はありません。

<!-- 第二种方式是使用注解的方式注入,主要用在java代码中使用注解注入properties文件中相应的value值 -->
     <bean id="prop" class="org.springframework.beans.factory.config.PropertiesFactoryBean">
         <property name="locations"><!-- 这里是PropertiesFactoryBean类,它也有个locations属性,也是接收一个数组,跟上面一样 -->
             <array>
                 <value>classpath:recommondHouse.properties</value>
             </array>
         </property>
          <!-- 设置编码格式 -->
        <property name="fileEncoding" value="UTF-8"></property>
     </bean>

注: それ以外の場合は、fileEncoding を設定する必要があります。文字化けが発生します。Eclipse でプロパティのエンコーディングを設定する必要があります。そうしないと、ページに文字が大量に表示され、中国語の文字が表示されなくなります。

図に示すように、3 つのエンコードを utf-8 に変更し、[更新] をクリックします。## 次に、@Value アノテーションを使用して get メソッドと set メソッドを介してデータを挿入します。 #

package com.fyinqing.util;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Component;
@Component("test")
public class PropertiesUtil {
    
    @Value("#{prop.name1}")
    private  String name1;
    
    @Value("#{prop.name2}")
    private String name2;
    
    @Value("#{prop.name3}")
    private String name3;
    
    @Value("#{prop.name4}")
    private String name4;
    
    public String getName2() {
        return name2;
    }
    public void setName2(String name2) {
        this.name2 = name2;
    }
    public String getName3() {
        return name3;
    }
    public void setName3(String name3) {
        this.name3 = name3;
    }
    public String getName4() {
        return name4;
    }
    public void setName4(String name4) {
        this.name4 = name4;
    }
    public String getName1() {
        return name1;
    }
    public void setName1(String name1) {
        this.name1 = name1;
    }
    public  List<String> getNameList(){
        List<String> list = new ArrayList<String>();
        list.add(name1);
        list.add(name2);
        list.add(name3);
        list.add(name4);
        return list;
    }
}

テストは次のとおりです: (キー コードのみが記述されています)

@Autowired
    PropertiesUtil propUtil;
@Test
    public void test4() {
        System.out.println(propUtil.getNameList());
    }

#

以上がSpring はプロパティ ファイルをどのように読み取るのでしょうか? (コード付き)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。