Desenvolvi uma aplicação em java para desktop com banco de dados MySql. A necessidade era que apenas uma máquina rodasse a aplicação, então instalei o bando de dados e a aplicação na mesma máquina e pronto. Aplicação rodando!
Acontece que apareceu a necessidade dessa aplicação rodar em outro computador, em uma cidade diferente. Eu ainda não sei como proceder para que a base de dados fique unificada, centralizada e os clientes possam acessá-las de suas máquinas.
Lembrando que:
Aplicação Java Desktop
Banco de dados MySql
Necessidade: centralizar o banco de dados e permitir acessá-lo através da aplicação desktop
Para fazer isso te aconselho a usar JEE + Servidor de Aplicação GlassFish. A sua aplicação e seu SGBD ficaram instalados no servidor, e com isso suas maquinas clientes basta acessar o endereço da aplicação no servidor. Se for aplicação desktop, a maquina cliente irá fazer o download via JWS de sua aplicação instalando no computador.
G
gbazilio
Terei que pesquisar sobre isso pois nunca fiz nada assim. Mas como minha aplicação ficaria disponível dentro de um servidor de aplicação?
E outra coisa…essa seria a única alternativa? Quais outras eu teria? Há um pouco de urgência. Minha aplicaçaõ já está desenvolvida e em produção.
Obrigado
J
joellazzari
gbazilio,
1 - Pra você conectar de uma cidade diferente, você deverá ter a máquina na qual está o servidor MySQL respondendo na Internet, a principio.
2 - Ao invés de conectar localhost, você usará os dados do servidor (um IP fixo seria uma boa), tipo
String url = "jdbc:mysql://o-ip-do-teu-servidor-mysql-aqui:3306/java";
String user = "root"; //é melhor criar um usuário no mysql, não usar root para acesso externo
String pass = "123";
Pensar em colocar os dados da conexão num arquivo properties é uma boa idéia.
essa é uma das maneiras.
J
Jhonny_Oliveira
Por ser uma aplicação Desktop, coloque entre suas alternativas a possibilidade de utilizado o Terminal Server ou algo similiar.
Dependendo da aplicação pode ser uma saida bastante interessante, principalmente porque as máquinas servidores de TS estarão na mesma rede que o servidor de aplicação, tornando muito mais rápido as respostas das requisições feitas pelo seu sistema.
Claro que não é o cenário mais interessante, mas traz algumas vantagens em questão de velocidade e não precisar de instalação pois clientes TS qualquer Windows ou Linux como Ubuntu tem.