Maison  >  Article  >  Java  >  Méthode d'instance de fichier de propriétés de lecture Java

Méthode d'instance de fichier de propriétés de lecture Java

PHPz
PHPzoriginal
2017-04-23 14:46:221577parcourir

Cet article de blog présentera l'utilisation de Java pour lire les fichiers de propriétés. Je suis récemment tombé sur un nouveau projet avec un grand nombre de fichiers de propriétés, j'ai donc eu l'idée d'écrire cet article de blog. Concernant les propriétés, elles sont généralement utilisées pour stocker des fichiers de données sous forme de paires clé-valeur. Par exemple, on met souvent le fichier de configuration de Jdbc dans le fichier de propriétés, puis on le configure en xml<.> Dans le fichier, nous utilisons directement ${} pour lire le contenu, comme le code suivant. L'avantage est que si le mot de passe de la base de données change, il suffit de modifier le fichier de propriétés, ce qui réduit les autres charges de travail. . , augmentant la commodité du programme. Alors, comment le programme lit-il le contenu du fichier  ? C'est la question abordée dans cet article de blog :

<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
		<property name="user" value="${jdbc.username}"></property>
		<property name="password" value="${jdbc.password}"></property>
		<property name="driverClass" value="${jdbc.driverClass}"></property>
		<property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property>
		
		<property name="initialPoolSize" value="${jdbc.initPoolSize}"></property>
		<property name="maxPoolSize" value="${jdbc.maxPoolSize}"></property>
	</bean>
//properties文件配置数据库的内容:
jdbc.username=root
jdbc.password=1230
jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql:///test
jdbc.initPoolSize=5
jdbc.maxPoolSize=10

D'accord, passons aux choses sérieuses. . , pour lire le fichier Properties, regardons d'abord l'API de la classe Properties, qui utilise principalement les méthodes suivantes :

<p>getProperty<code><strong>getProperty</strong>(String key)  (String key ) Recherchez la propriété

<code><strong>load</strong>(InputStream inStream) load(InputStream inStream) à l'aide de la clé spécifiée

Lisez la liste d'attributs (paires de clés et d'éléments) du flux d'entrée

Sans plus tard, entrons dans le code Utilisons le code Lire. le fichier JDBC base de données de connexion décrit ci-dessus et récupérez le nom d'utilisateur et le mot de passe :

import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.Iterator;
import java.util.Properties;
import java.util.Set;

public class ReadPropertiesFile {

	public static void main(String[] args)throws Exception {

		readProperties();

	}

	private static void readProperties() throws IOException{

		Properties pro = new Properties(); //建立一个映射的properties类

		InputStream in=null;

		try {

			in = new BufferedInputStream(new FileInputStream("DataBaseConfig.properties"));//根据文件获取流

			pro.load(in);//加载流

			Set<String> contents = pro.stringPropertyNames();  

			Iterator<String> iter = contents.iterator();

			while (iter.hasNext()) {

				String key = iter.next();

				if (key.indexOf("username")!=-1) {

					System.out.println("数据库的用户名是:"+pro.getProperty(key));

				}

				if (key.indexOf("password")!=-1) {  

					System.out.println("数据库的连接密码:"+pro.getProperty(key));

				}

			}

		} catch (Exception e) {

			e.printStackTrace();

			System.err.println("读取过程发生异常");
		}finally {

			if (in!=null) { //一定要关闭流

				in.close();
			}
		}

	}

}
//输出结果:


Le nom d'utilisateur de la base de données est : root

Mot de passe de connexion à la base de données : 1230

3. Ceci est la structure de mon projet. Il faut noter que le fichier de propriétés doit être sous le répertoire principal du projet, sinon une exception sera levée

 

Bon, c'est tout pour cet article de blog. Bienvenue aux conseils de chacun. Si vous êtes intéressé, veuillez étudier le Tutoriel vidéo Java en ligne sur le site Web chinois PHP

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!

Déclaration:
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