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>
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; } }
@Autowired PropertiesUtil propUtil; @Test public void test4() { System.out.println(propUtil.getNameList()); }
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!