Lea el archivo de propiedad externo común en Java Webapp y la aplicación Java normal
Sé que esta pregunta ha respondido muchas veces con la respuesta más útil de la siguiente manera,
Sin embargo, tenemos algunos requisitos especiales como a continuación,
Webapp se implementará en tomcat.La aplicación Java normal en forma de .jar se colocará en la carpeta / myappEl archivo myappConfig.property se colocará en / myappEstructura de directorios en la máquina del cliente
/myapp
/myapp.jar
/assests/myappConfig.property
/tomcat/webapps/myapp.war
Básicamentemyapp.jar ymyapp.war accederá a los valores de conexión sql db para la conexión de base de datos MySql y las operaciones db.
Acceso a myappConfig.property desde myapp.jar -> Funciona bien
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"));
¿Alguien puede ayudar / sugerir cómo implementar,
Accediendo al archivo myappConfig.property desde mywebapp,
el cambio de tiempo de ejecución proporcionado en el archivo myappConfig.property no requiere que se vuelva a implementar myapp.war
Gracias de antemano por su ayuda.
editar
A continuación se detallan los pasos en los que queremos entregar el proyecto al cliente.
A continuación se muestra mi directorio de aplicaciones
/myapp
/myapp.jar
/assests/myappConfig.property
/tomcat/webapps/myapp.war
empaca todo en un paquete con alguna herramienta de empaque.
Ejecute este paquete en la máquina del cliente en cualquier ubicación y tendrá la misma estructura de directorios que la anterior.
Aquí, no quiero codificar ninguna ubicación en webapp o tomcat para "/assests/myappConfig.property"
Aplicación Java normal Puedo leer el archivo de propiedades, pero para wepapp no tengo una idea clara de cómo hacerlo.