Lesen Sie die gemeinsame externe Eigenschaftendatei in Java Webapp und Java Normal App
Ich weiß, dass diese Frage oft mit der nützlichsten Antwort beantwortet wurde:
Jedoch, wir haben einige spezielle anforderung wie folgt,
Webapp wird auf tomcat bereitgestellt.Normal Java-App in Form von .jar wird unter Ordner / myapp @ platzieie Datei @ myappConfig.property wird unter / myapp @ abgelegVerzeichnisstruktur auf Client-Rechner
/myapp
/myapp.jar
/assests/myappConfig.property
/tomcat/webapps/myapp.war
Grundsätzlich myapp.jar und myapp.war greift auf SQL-DB-Verbindungswerte für MySQL-Datenbankverbindungen und DB-Operationen zu.
Auf myappConfig.property über myapp.jar zugreifen -> Funktioniert einwandfrei
File jarPath = new File(Myapp.class.getProtectionDomain().getCodeSource().getLocation().getPath());
String propertiesPath = jarPath.getParent();
System.out.println(" propertiesPath-" + propertiesPath);
mainProperties.load(new FileInputStream(propertiesPath + "\\assets\\myapp.property"));
Kann jemand helfen / vorschlagen, wie zu implementieren,
Auf myappConfig.property-Datei von mywebapp zugreifen,
ei einer durchgeführten Laufzeitänderung in der Datei myappConfig.property muss myapp.war nicht erneut bereitgestellt werden.
Danke im Vorraus für deine Hilfe
bearbeite
Below sind die Schritte, in denen wir das Projekt an den Kunden liefern möchten.
Below ist mein App-Verzeichnis
/myapp
/myapp.jar
/assests/myappConfig.property
/tomcat/webapps/myapp.war
pack alles in einem Paket mit einem Verpackungswerkzeug.
Führen Sie dieses Paket auf dem Client-Computer an einem beliebigen Ort aus und es hat die gleiche Verzeichnisstruktur wie oben
Hier möchte ich keinen Speicherort in Webapp oder Tomcat für "/assests/myappConfig.property"
Normale Java-App Ich kann die Eigenschaftendatei lesen, aber für wepapp bekomme ich keine klare Vorstellung davon, wie das geht?