Maison > Java > javaDidacticiel > le corps du texte

Comment Spring lit-il le fichier de propriétés ? (avec code)

不言
Libérer: 2018-09-27 14:43:02
original
3293 Les gens l'ont consulté

Le contenu de cet article concerne la façon dont Spring lit le fichier de propriétés ? (Le code est ci-joint), qui a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère qu'il vous sera utile.

Problème :

Vous devez lire le nom de la propriété requise sur la page via les propriétés afin de faciliter les modifications ultérieures.

Solution :

Vous pouvez utiliser spring PropertiesFactoryBean pour lire les propriétés, vous n'avez donc pas besoin d'écrire un programme pour lire les informations via la classe Properties de jdk

<!-- 第二种方式是使用注解的方式注入,主要用在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>
Copier après la connexion

Remarque : vous devez définir fileEncoding, sinon, des caractères tronqués apparaîtront. Vous devez également définir l'encodage des propriétés en situation d'éclipse, sinon la page affichera un tas de caractères et de lettres et ne pourra pas afficher les caractères chinois. Les paramètres dans Eclipse sont les suivants :

<. 🎜>

Comme le montre la figure, modifiez les 3 encodages en utf-8, cliquez sur mettre à jour Oui

Ensuite, injectez les données via les méthodes get et set via l'annotation @Value <. 🎜>

Le test est le suivant : (seul le code clé est écrit)
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;
    }
}
Copier après la connexion

@Autowired
    PropertiesUtil propUtil;
@Test
    public void test4() {
        System.out.println(propUtil.getNameList());
    }
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!