Dans le développement du projet Maven, que dois-je faire lorsque j'ai besoin de lire le fichier de configuration sous SRC /?
Supposons qu'il existe un fichier de configuration sous ressources avec le nom de fichier kafka.properties (pourquoi utiliser kafka.properties? Parce que c'est un problème rencontré lorsque je fais des projets Kafka. J'ai trouvé beaucoup d'informations en ligne, alors je suis devenu un porteur et je l'ai réglé en fonction de ma propre compréhension)
1. Lire en classe Java
Si le fichier de configuration n'est pas dans le répertoire SRC / Main / Resources, vous pouvez l'utiliser directement.
Propriétés Prop = New Properties (); Prop.Load (new InputStream ("kafka.properties"));Lorsque le fichier de configuration est placé dans le répertoire de SRC / Main / Resources, vous pouvez uniquement utiliser la méthode class.getResourceSStream () pour charger
Propriétés Prop = New Properties (); Prop.Load (this.getClass (). getResourCeasStream ("/ kafka.properties")); À l'heure actuelle, le chemin du paramètre est écrit dans la méthode GetResourCeasStream (nom de chaîne):
1). S'il est écrit comme "kafka.properties", il s'agit de rechercher dans le même répertoire que le fichier de classe de la classe actuelle (mais évidemment personne ne mettra le fichier de configuration dans cette position dans des projets normaux).
2). Si vous êtes écrit comme "/kafka.properties", accédez au répertoire des classes de l'ensemble du projet et recherchez-le, c'est-à-dire cible / classes
2. Lire dans le fichier XML du framework Spring
Tout d'abord, écrivons un fichier de configuration kafka.properties
kafka.topic = thème serializer.class = kafka.serializer.stringencoder key.serializer.class = kafka.serializer.stringencoder
Il y a deux façons d'appeler
1). Premièrement, vous pouvez le configurer dans les haricots de printemps
<bean id = "PropertyConfigurer"> <propriété name = "Locations"> <sist> <span style = "White-Space: Pre"> </span> <value> /kafka.properties </value> </ list> </premy> </ank>
Ici, vous pouvez également configurer plusieurs valeurs dans la balise de liste, afin qu'un ou même plusieurs fichiers de configuration puissent être lus dans le bean.
<bean id = "kafkaservice"> <! - <propriété name = "topic"> <value> topic </value> </ propriété> -> <propriété name = "topic"> <value> $ {kafka.topic} </value> </ propriété> </-bean> De cette façon, les paramètres du fichier de configuration peuvent être appelés avec succès dans le bean suivant. La section de propriété commentée ci-dessus et la ligne commentée ont le même effet.
2). Ou vous pouvez également utiliser la méthode suivante
<Context: propriété-placeholder location = "classpath: kafka.properties" />
Configurer le contexte: propriété-placeholder directement dans les fichiers de configuration de Spring. Il existe plusieurs fichiers de configuration qui peuvent être séparés par des virgules, par exemple
<Context: propriété-placeholder location = "classpath: kafka.properties, classpath: jdbc.properties" />
La méthode appelée est la même que dans 1)., Donc je ne le répéterai pas ici.
Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.