Estou começando um projeto e estou com dificuldades para conectar o meu projeto ao banco, procuro na internet algum tutorial de como eu faria e infelizmente não acho nenhum.
Estou pretendendo usar JPA, JSF, Jboss e EJB3.0 para meu projeto e infelizmente não sei como configurar o persistence.
Alguém poderia me ajudar me explicando passo a passo ou passando algum tutorial que tenha isso?
Depois de eu fazer farei questão de fazer um artigo de como iniciar um projeto do zero para ajudar as próximas pessoas que tiverem a mesma dificuldade que eu.
publicstaticvoidmain(Stringargs[]){// A captura de exceções SQLException em Java é obrigatória para usarmos JDBC. // Para termos acesso ao objeto con, ele deve ter um escopo mais amplo que o bloco try Connectioncon=null;try{// Este é um dos meios para registrar um driver Class.forName("org.postgresql.Driver").getInstance();// Registrado o driver, vamos estabelecer uma conexão con=DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres","web","web");// Após estabelecermos a conexão com o banco de dados // Utilizamos o método createStatement de con para criar o Statement Statementstm=con.createStatement();// Vamos executar o seguinte comando SQL : StringSQL="select ct.contato_tipo as contato, c.dado as dado "+"from pessoas p, contatos c, contatos_tipos ct"+"where p.id = c.id_pessoa"+"and c.id_tipo_contato = ct.id";// Definido o Statement, executamos a query no banco de dados ResultSetrs=stm.executeQuery(SQL);// O método next() informa se houve resultados e posiciona o cursor do banco // na próxima linha disponível para recuperação // Como esperamos várias linhas utilizamos um laço para recuperar os dados while(rs.next()){// Os métodos getXXX recuperam os dados de acordo com o tipo SQL do dado: Stringtit=rs.getString("contato");Stringaut=rs.getString("dado");//int totalFaixas = rs.getInt("total_faixas"); // As variáveis tit, aut e totalFaixas contém os valores retornados // pela query. Vamos imprimí-los //System.out.println(48:"Titulo: "+tit+" Autor: "+aut+"49: Tot. Faixas: "+totalFaixas); System.out.println(tit+": "+aut);}}catch(SQLExceptione){// se houve algum erro, uma exceção é gerada para informar o erro e.printStackTrace();//vejamos que erro foi gerado e quem o gerou }finally{try{con.close();}catch(SQLExceptiononConClose){System.out.println("Houve erro no fechamento da conexão");onConClose.printStackTrace();}}// fim do bloco try-catch-finally }// fim da main
publicstaticvoidmain(Stringargs[]){// A captura de exceções SQLException em Java é obrigatória para usarmos JDBC. // Para termos acesso ao objeto con, ele deve ter um escopo mais amplo que o bloco try Connectioncon=null;try{// Este é um dos meios para registrar um driver Class.forName("org.postgresql.Driver").getInstance();// Registrado o driver, vamos estabelecer uma conexão con=DriverManager.getConnection("jdbc:postgresql://localhost:5432/postgres","web","web");// Após estabelecermos a conexão com o banco de dados // Utilizamos o método createStatement de con para criar o Statement Statementstm=con.createStatement();// Vamos executar o seguinte comando SQL : StringSQL="select ct.contato_tipo as contato, c.dado as dado "+"from pessoas p, contatos c, contatos_tipos ct"+"where p.id = c.id_pessoa"+"and c.id_tipo_contato = ct.id";// Definido o Statement, executamos a query no banco de dados ResultSetrs=stm.executeQuery(SQL);// O método next() informa se houve resultados e posiciona o cursor do banco // na próxima linha disponível para recuperação // Como esperamos várias linhas utilizamos um laço para recuperar os dados while(rs.next()){// Os métodos getXXX recuperam os dados de acordo com o tipo SQL do dado: Stringtit=rs.getString("contato");Stringaut=rs.getString("dado");//int totalFaixas = rs.getInt("total_faixas"); // As variáveis tit, aut e totalFaixas contém os valores retornados // pela query. Vamos imprimí-los //System.out.println(48:"Titulo: "+tit+" Autor: "+aut+"49: Tot. Faixas: "+totalFaixas); System.out.println(tit+": "+aut);}}catch(SQLExceptione){// se houve algum erro, uma exceção é gerada para informar o erro e.printStackTrace();//vejamos que erro foi gerado e quem o gerou }finally{try{con.close();}catch(SQLExceptiononConClose){System.out.println("Houve erro no fechamento da conexão");onConClose.printStackTrace();}}// fim do bloco try-catch-finally }// fim da main
Opa Guevara era isso mesmo que estava precisando. Uma última dúvida, basta isso para realizar a conexão? não é necessário a configuração de algum datasource não?
Abraços
G
Guevara
Precisa do persistence.xml, log4j.xml, hibernate.properties e HibernateUtil, todos configurados.
O persistence fica em /src/META-INF, log4j e hibernate.properties na /src e o HibernateUtil vc coloca no seu pacote DAO do projeto.
Abraço!
R
rodcesar
Opa guevara muito obrigado.
Uma última dúvida.
Eu preciso alterar a configuração de algum desses arquivos? log4j hibernate.properties e HibernateUtil ou eles já se encontram configurados?
Abraço!
G
Guevara
Log4j e hibernate.properties vc pega na pasta descompactada do Hibernate que vc baixou do site, lá têm os modelos, só toma cuidado no caso de vc estar usando VRaptor, precisa colocar mais coisa lá, e o HibernateUtil é este aqui:
Exemplo: