Я прочитал все соответствующие записи по этой теме, но ничего не работает.
Я поместил файл свойств базы данных в resources / property / db.properties, добавил в Maven следующее:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0.0</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>write-project-properties</goal>
</goals>
<configuration>
<outputFile>${project.build.outputDirectory}/property/db.properties</outputFile>
</configuration>
</execution>
</executions>
</plugin>
и используя следующий код для получения потока:
this.getClass().getClassLoader().getResourceAsStream("db.properties");
, но когда объект Properties загружает его, он, как ни странно, содержит только одно свойство, определенное в pom.xml (который является кодировкойимущество)!
Я также попробовал следующее, но безрезультатно:
this.getClass().getClassLoader().getResourceAsStream("property/db.properties");
Я вижу, что файл находится в классе target / property / db.properties (или в последнем случае в классе)./db.properties) когда проект создается и разворачивается (Tomcat).Есть ли что-то, чего мне здесь не хватает?
ОБНОВЛЕНИЕ
Как предлагается в приведенном ниже комментарии, используйте "/" для префикса пути к файлу свойств.
Если вы хотите сделать это с помощью свойства-maven-plugin, убедитесь, что значения свойств указаны в Properties
разделе POM.xml.Затем этот плагин захватывает эти значения и помещает их в файл свойств, обозначенный тегом outputFile
.