En el desarrollo del proyecto Maven, ¿qué debo hacer cuando necesito leer el archivo de configuración en SRC/?
Supongamos que hay un archivo de configuración en recursos con el nombre del archivo kafka.properties (¿por qué usar kafka.properties? Porque este es un problema encontrado al hacer proyectos de kafka. Encontré mucha información en línea, así que me convertí en un portero y lo ordené basado en mi propia comprensión)
1. Leer en clase Java
Si el archivo de configuración no está en el directorio SRC/Main/Resources, puede usarlo directamente.
Propiedades prop = new Properties (); Prop.Load (nuevo InputStream ("Kafka.Properties"));Cuando el archivo de configuración se coloca en el directorio de src/main/recursos, solo puede usar el método class.getResourCeasstream () para cargar
Propiedades prop = new Properties (); Prop.Load (this.getClass (). GetResourceasstream ("/kafka.properties")); En este momento, la ruta del parámetro está escrita en el método getResourceasstream (nombre de cadena):
1). Si se escribe como "kafka.properties", es buscar en el mismo directorio que el archivo de clase de la clase actual (pero obviamente nadie pondrá el archivo de configuración en esta posición en proyectos normales).
2). Si se escribe como "/kafka.properties", vaya al directorio de clases de todo el proyecto y busque, es decir, objetivo/clases
2. Lea en el archivo XML del marco de Spring
Primero, escribamos un archivo de configuración kafka.properties
kafka.topic = topic serializer.class = kafka.serializer.stringencoder key.serializer.class = kafka.serializer.stringencoder
Hay dos formas de llamar
1). Primero, puede configurarlo en frijoles de primavera
<bean id = "PropertyConfigurer"> <Property name = "ubicaciones"> <List> <span style = "white-space: pre"> </span> <alue> /kafka.properties </value> </list> </property> </bean>
Aquí también puede configurar múltiples valores en la etiqueta de lista, para que uno o incluso varios archivos de configuración se puedan leer en Bean.
<bean id = "kafkaservice"> <!-<Property name = "topic"> <value> topic </valor> </property>-> <propiedad name = "topic"> <valor> $ {kafka.topic} </value> </property> </ bean> De esta manera, los parámetros en el archivo de configuración se pueden llamar con éxito en el bean posterior. La sección de propiedad comentada anteriormente y la línea comentada tienen el mismo efecto.
2). O también puede usar el siguiente método
<context: Property-placeholder ubicación = "classpath: kafka.properties"/>
Configurar contexto: propiedad-placeholder directamente en los archivos de configuración de Spring. Hay múltiples archivos de configuración que pueden separarse por comas, por ejemplo
<context: Property-placeholder ubicación = "classpath: kafka.properties, classpath: jdbc.properties"/>
El método llamado es el mismo que en 1), por lo que no lo repetiré aquí.
Lo anterior es todo el contenido de este artículo. Espero que sea útil para el aprendizaje de todos y espero que todos apoyen más a Wulin.com.