Minha aplicação Swing utiliza o MySql ( c/ Hibernate ) . Como posso fazer para , ao clicar no ícone do aplicativo, o MySql seja carregado ? Hoje, no desenvolvimento, eu o carrego na mão ( cdmysql; cd bin; mysqld ), mas não gostaria de pedir isto ao usuário. Também não gostaria de carregar o MySql ao iniciar a máquina, pois haverá poucos momentos nos quais ele utilizará o sistema.
//
// Desabilita a saida autom�tica quando bot�o close clicado...
//
jframe.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
//
// Controla o evento do bot�o close da janela...
//
jframe.addWindowListener(
new WindowAdapter()
{
public
void windowClosing(WindowEvent we)
{
java.lang.Runtime rt = Runtime.getRuntime();
java.lang.Process prcs = rt.exec("comando para parar o banco");
}
}
);
Sobre ser seguro…
Bem… isso deixa a aplicação especifica para essa situação… pois para startar o banco sempre terá que ter o mysql naquela pasta e aquele executável…Mas isso até que pode ser contornavel… poderia-se colocar o caminho de execução para startar o banco em um arquivo texto e a aplicação ler esse texto…
O problema disso tudo é que ele não garante que o banco realmente foi startado… bem… pelo menos acho que não…
Mas tb não vejo de imediato outra maneira de se fazer isso…
Que tal, ao inves de usar o MySQL, que eh feito pra uma arquitetura cliente-servidor totalmente diferente do que vc esta usando, usar um HSQLDB da vida?
Andei dando uma olhada (rápida pois estou no meu trabalho ) na página do HSQLDB. Pelo que entendi, há uma ferramenta que importará as estruturas das tabelas já definidas no MySql.
Sou novato também em MySql, e uma das coisas que me agradou foi o controlador visual ( acho que chama Control Center ) que permite alterar as definições das tabelas, ver os dados etc … Esta facilidade também está presente no HSQLDB ?
Gostei de saber que o HSQLDB tem uma função de compactação da base.
Quais as outras vantagens que eu obteria ? Trocando de banco, bastaria trocar o arquivo de configuração do Hibernate ??? Ele é mais rápido ??? Mais simples de administrar ??? Tem algum plugin ( que traga vantagens ) para o Eclipse ???
Quer dizer se eu faço uma aplicação, eu não posso utilizar o MySql sem uma licença paga ? Se eu abrir meu fonte, eu poderei usar o MySql gratuitamente ? Meu fonte não é meu , mas da empresa que está me pagando para desenvolver o sistema . Como faço para transformar meu sistema em GPL ou algo compatível ?
Alguém mais utiliza o HSQLDB, ou ele também tem problemas de lincenciamento ??
Depois de muito tempod ebatendo esta jossa de licença, cheguei a uma conclusão: Sua aplicação pode utilizar MySQL como servidor, não pode tê-lo embutido.
Se a MySQL AB tivesse algum fundamento, programas não-GPL que usam MySQL sem a licença comercial do sgbd nem são GPL [e o que mais tem por aí é isso], ela já tinha processado todo mundo [uhm…SCO?]
Linux é GPL. Meu programa roda utilizando serviços do Linux, não faz parte do Linux, logo não precisa ser GPL. MySQL é GPL, meu programa usa serviços do MySQL, não faz parte do MySQL, logo não precisa ser GPL [por isso os embeebed não poderiam ser criados
Sei lá, eu trabalho assim. Tô de saco cheio desta licença
Mas pro q vc quer, o HSQLDB deve dar e sobrar, é baum msm