Estou passando por um problema que ainda não consegui resolver. Até já tenho a idéia em mente, entretanto, não estou sabendo
como implementar. Estou utilizando Spring, abaixo exemplo dos arquivos database.properties e aplicationContext.xml.
Esse é o meu arquivo database.properties
database.user=usuario
database.psw=senha
database.url=jdbc:mysql://localhost/teste
Meu arquivo aplicationContext.xml:
<bean id="myDataSource"
class="com.mchange.v2.c3p0.ComboPooledDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver" />
<property name="jdbcUrl" value="$punit{database.url}" />
<property name="user" value="$punit{database.user}" />
<property name="password" value="$punit{database.psw}" />
</bean>
Utilizo o database.properties para preencher os dados do aplicationContext.xml.
A idéia é a seguinte, criar um Jar que tenha um metodo que conecte em um banco e me retorne usuário e senha de acordo com o sistema.
Após o retorno preencho o database.properties e já consigo conectar no banco desejado.
A conexão que irei ter no Jar só servira para me retornar usuario e senha a ser utilizado no database.properties que será o banco utilizado pelo sistema.
O metódo será parecido com o exemplo abaixo:
public DadosConexao doGetConexao(String usuario, String senha, Boolean Servidor, Integer idSistema);
A idéia principal é que o desenvolvedor não tenha acesso a senha do banco de produção, dentro do Jar irei tratar o argumento Servidor, se o mesmo for true,
irei considerar como produção, então irei no banco localizar o usuario e a senha para preencher o database.properties, caso seja falso, irei conectar no banco de teste
com usuario e senha passados.
Estou tentando implementar essa idéia, gostaria da opinião de vcs. Se estou no caminho certo, se a idéia é válida e se alguém pode me
da umas dicas de como implementar.
Mais um vez obrigado e Deus vos abençoe sempre em nome de Jesus.