Duvida com Hibernate

2 respostas
farzac

Ola Amigos

Estou tendo problemas com a Persistencia de dados com hibernate, minhas duvidas sao:

Em que pasta devo salvar meu .class, onde devo salvar o hbm.xml, properties, hibernante.cfg

Caso seja dentro da pasta do projeto java, entao porque devo salvar o hibernate na minha maquina, dentro do hibernate ha um .bat chamado build, o que faço dentro dele.

Eoutra duvida minha é que eu colei estes arquivos acima citados em toda pasta lib da minha maquina e apontei o path para tudo que é pasta, mas ainda continuo com o seguinte erro quando executo minha class main

0 [main] INFO cfg.Environment  - Hibernate 3.0.5

16 [main] INFO cfg.Environment  - hibernate.properties not found

47 [main] INFO cfg.Environment  - using CGLIB reflection optimizer

156 [main] INFO cfg.Environment  - using JDK 1.4 java.sql.Timestamp handling

359 [main] INFO cfg.Configuration  - Mapping resource: Hibernate/Amigos.hbm.xml

6000 [main] INFO cfg.HbmBinder  - Mapping class: Amigos -> amigos

6109 [main] INFO cfg.Configuration  - processing extends queue

6109 [main] INFO cfg.Configuration  - processing collection mappings

6109 [main] INFO cfg.Configuration  - processing association property references

6109 [main] INFO cfg.Configuration  - processing foreign key constraints

org.hibernate.MappingException: Could not determine type for: Integer, for columns: [org.hibernate.mapping.Column(codigo)]

at org.hibernate.mapping.SimpleValue.getType(SimpleValue.java:265)

at org.hibernate.mapping.SimpleValue.isValid(SimpleValue.java:252)

at org.hibernate.mapping.RootClass.validate(RootClass.java:189)

at org.hibernate.cfg.Configuration.validate(Configuration.java:839)

at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1000)

at Hibernate.AmigosDAO.(AmigosDAO.java:31)

at Hibernate.Teste.main(Teste.java:48)

BUILD SUCCESSFUL (total time: 10 seconds)

O meu fonte esta assim

package Hibernate;

import java.util.List;

import java.util.<em>;

import org.hibernate.</em>;

import Hibernate.<em>;

import org.hibernate.cfg.Configuration;

import org.hibernate.</em>;

import org.hibernate.Session;

import org.hibernate.SessionException;

import org.hibernate.SessionFactory;

public class AmigosDAO{

private SessionFactory factory;   
  
   public AmigosDAO() throws Exception{   
       factory = new Configuration().addClass(Amigos.class).buildSessionFactory();   
        }        
  
   public void insert(Amigos amigos) throws Exception{   
      Session session = factory.openSession();   
      session.save(amigos);   
      session.flush();   
      session.close();   
   }   
       
 /*  public java.util.List getList(String condicao) throws Exception{   
      Session session = factory.openSession();   
      List amigos = session.find(condicao);   
      session.flush();   
      session.close();   
      return amigos;   
   }   
   */    
   public Amigos retrieve(String pk) throws Exception{   
      Session session = factory.openSession();   
      Amigos amigos = (Amigos)session.load(Amigos.class, pk);   
      session.flush();   
      session.close();   
      return amigos;   
   }   
       
   public void delete(Amigos amigos) throws Exception{   
      Session session = factory.openSession();   
      session.delete(amigos);   
      session.flush();   
      session.close();   
   }   
}

Analisando meu fonte vera que ha um trecho comentado e o motivo é que quando descomentado da o seguinte erro ao compilar o fonte

Created dir: C:\ProjetoJava\Hibertnate\build\classes

Compiling 4 source files to C:\ProjetoJava\Hibertnate\build\classes

C:\ProjetoJava\Hibertnate\src\Hibernate\AmigosDAO.java:41: cannot find symbol

symbol  : method find(java.lang.String)

location: interface org.hibernate.Session

List amigos = session.find(condicao);

1 error

BUILD FAILED (total time: 1 second)

Alguem poderia me exclarecer as duvidas, desde ja, muito obrigado.

2 Respostas

rafaelglauber

Coloca seus códigos com a “TAG CODE” para melhor apresentação, e sobre sua pergunta, já tentou ler esse material aqui: http://www.hibernate.org/hib_docs/reference/en/html/tutorial.html … se você fizer tudo bonitinho funciona, lembrando que suas classes voce pode colocar no pacote que quiser, mas vale um pouco de organização, já que basicamente os pacotes servem para organizar…boa leitura!!!

farzac

Ola amigo

Quando vc diz colocar tudo no pacote as classes, vc quer dizer o .class, o hbm.xml, o .properties e o hibernante.cfg ou apenas o .class?

Criado 15 de janeiro de 2008
Ultima resposta 16 de jan. de 2008
Respostas 2
Participantes 2