Search the Community
Showing results for tags 'jdbc'.
Found 2 results
-
Olá amigos do fórum. Hoje trago a seguinte questão: Estou iniciando os estudos sobre conexões JAVA/Postgres. E me deparei com o seguinte problema: Quando tento testar a minha classe chamada, "PoolDeConexoes", ela me retorna os seguintes erros: "Exception in thread "main" java.lang.NullPointerException at BDAccess.PoolDeConexoes.<init>(PoolDeConexoes.java:13) at BDAccess.PoolDeConexoes.getInstance(PoolDeConexoes.java:21) at BDAccess.Main.main(Main.java:9)" Porém, a IDE não me exibe nenhum erro semântico durante a digitação, então, o mais provável é que se trata de um erro lógico. Abaixo estão as minhas classes, todas comentadas com o devido processo do pool de conexões, nos moldes solicitados pelo meu professor. package BDAccess; import java.util.ArrayList; public class PoolDeConexoes { private static ArrayList<Conexao> conexoes; private static PoolDeConexoes pool; private PoolDeConexoes() { Conexao cn1 = new Conexao(); Conexao cn2 = new Conexao(); conexoes.add(cn1); conexoes.add(cn2); getConexao(); } public static PoolDeConexoes getInstance() { if(pool == null) { pool = new PoolDeConexoes(); } return pool ; } public Conexao getConexao() { if(conexoes == null) { Conexao c = new Conexao(); conexoes.add(c); return c; }else { for(Conexao s:conexoes) { if(s.isLivre()) { return s; } } } return null; } } Acima, a classe denominada: PoolDeConexoes.java package BDAccess; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement; public class Conexao { private Connection cnx; private boolean livre; public Conexao() { this.livre = true; Parametros prm = Parametros.getInstance(); String driverJDBC = prm.getParametros("driverJdbc"); String urlBanco = prm.getParametros("urlBanco"); String nomeUsuario = prm.getParametros("nomeUsuario"); String senha = prm.getParametros("senha"); try { Class.forName(driverJDBC); System.out.println("Driver importado!"); cnx = DriverManager.getConnection(urlBanco, nomeUsuario, senha); System.out.println("Conexão estabelecida"); }catch (Exception e) { System.out.println("Conexão não estabelecida!"); } } public Connection getConnection() { return cnx; } public void reserva() { if(livre) { livre = false; }else { System.out.println("Esta conexão já está em uso!"); } } public void libera() { livre = true; } public boolean isLivre() { return livre; } } Acima, a classe com o objeto Conexão. package BDAccess; import java.io.IOException; import java.util.ArrayList; public class Main { public static void main(String[] args) throws IOException{ PoolDeConexoes plc = PoolDeConexoes.getInstance(); System.out.println(plc.getConexao()); } } E aqui o meu método principal. Agradeço desde já pelo auxílio de vocês sobre a minha questão.
-
Erro ao atualizar campo de todos os registros com o path dos arquivos
andersonrc_ posted a topic in Java
Olá pessoal, a situação é a seguinte: Estou fazendo a migração de arquivos armazenados no banco para sistemas de arquivos. No código como poderá ser visto abaixo, utilizo um algoritmo que gera o nome dos arquivos e os salvam em um diretório gerado através da data de inclusão do documento. Até aí tudo bem, pois os arquivos estão sendo salvos corretamente. Mas preciso também, armazenar o path destes arquivos na coluna path do database. O problema que está ocorrendo é que só estou conseguindo atualizar apenas o primeiro registro e de forma errada, pois ele salva com o path do último arquivo gerado. Considerando que todos os registros estão com o campo path vazios. Como passo atualizar todos os registros, associando o path correto para todos os arquivos?