Olá Galera! Passei bastante tempo off mas estou de volta! Muitos estudos, mestrado, projetos e concursos… ufaa
E agora vou postar uma solução para aplicações em Java que eu considero muito importante e que muita gente não conhece. Vou mostrar como carregar drivers em tempo de execução em uma aplicação.
Em primeiro lugar, você deve passar a localização do driver no computador para um objeto do tipo URL. A String do caminho deve ter o formato do exemplo do codigo abaixo. Também deve ser criado um objeto do tipo URLClassLoader, que é quem pega a definição para carregamento de classes no sistema. Por fim, é criado um objeto do tipo Class, que é quem que será responsável por adicionar a url do driver e logo após carregá-lo.
URL location = new URL("jar:file://" + caminho + "!/");
URLClassLoader sysloader = (URLClassLoader) ClassLoader.getSystemClassLoader();
Class sysclass = URLClassLoader.class;
Após isso, deve ser executado o método addURL. Como esse método não está visível, deve ser utilizado Reflection para encontrá-lo e executá-lo.
for(Method met: sysclass.getDeclaredMethods()){
if(met.getName().equalsIgnoreCase("addURL")){
met.setAccessible(true);
met.invoke(sysloader, new Object[] { location });
}
}
Pronto! Sua aplicação está pronta para carregar qualquer Driver em tempo de execução! Espero que tenham gostado da dica!
A partir de agora, não irei mais postar diariamente, meu tempo está bastante limitado. Mas não se preocupem que toda semana irei colocar pelo menos uma novidade no blog.