org.hibernate.annotations mas nao servira para mapear a classe, apenas para adicionar informacoes extras. Se utilizar a anotacao do pacote errado o hibernate lancara excecoes dizendo que a classe nao foi mapeada.5. Configurando o hibernateExistem duas formas de configurar o hibernate, atraves de um XML ou de um arquivo de properties. Por sem mais simples, utilizaremos o arquivo de properties. Crie um arquivo chamado hibernate.properties na sua aplicacao, ele deve ficar na raiz dos fontes (SRC no eclipse por exemplo) e deve estar na raiz do classpath quando executar sua aplicacao (se estiver utilizando um editor, basta colocar o arquivo na pasta raiz dos fontes). O arquivo deve ficar assim:hibernate.connection.driver_class=org.hsqldb.jdbcDriver hibernate.connection.url=jdbc:hsqldb:hsql://localhost hibernate.connection.username=sa hibernate.connection.password= # Echo all executed SQL to stdout hibernate.show_sql=true # Drop and re-create the database schema on startup hibernate.hbm2ddl.auto=updateNesse arquivo temos nas quatro primeiras linhas as informacoes de conexao JDBC com o banco de dados. Configuramos tambem a exibicao de queries e que o hibernate deve criar a estrutura do banco de dados automaticamente.Com esse arquivo o Hibernate estara configurado. Caso voce nao coloque o arquivo no lugar certo com o nome correto um erro como o seguinte pode acontecer: Exception in thread "main" org.hibernate.HibernateException: hibernate.dialect must be set when no Connection avalable.Vamos agora criar uma classe que utilizara o hibernate.6. Executando um programa com o HibernateCrie na sua aplicacao a seguinte classe para podermos testar o hibernate:package org.javaframework.persistencia; import java.util.List; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.AnnotationConfiguration; import org.hibernate.classic.Session; public class HelloWorldHibernate { public static void main(String[] args) { AnnotationConfiguration config = new AnnotationConfiguration(); config.addAnnotatedClass(Produto.class); SessionFactory sessionFactory = config.buildSessionFactory(); Session session = sessionFactory.openSession(); inserirProduto(session); listarProdutos(session); session.close(); sessionFactory.close(); } private static void inserirProduto(Session session) { Produto produto = new Produto(); produto.setNome("Shampoo"); Transaction tx = session.beginTransaction(); session.persist(produto); tx.commit(); System.out.println("Produto inserido"); } private static void listarProdutos(Session session) { List<Produto> produtos = session.createQuery("from Produto").list(); for (Produto p: produtos) { System.out.printf("%4d \t %s %n", p.getId(), p.getNome()); } } }A classe HelloWorldHibernate e apenas para efeito didadico, e interessante voce estruturar a sua aplicacao de maneira mais elegante. Nesse codigo criamos um AnnotationConfiguration que permite a configuracao de classes anotadas no Hibernate. Adicionamos a classe Produto para ser adicionada a configuracao. O arquivo hibernate.properties sera lido automaticamente. Com essa configuracao construimos um SessionFactory. Um SessionFactory serve para criamos sessoes do hibernate. Devemos ter apenas um SessionFactory na aplicacao mas podemos ter varios Sessions (geralmente um para cada thread, ou um por requisicao no caso de aplicacoes web). Um SessionFactory e como um DataSource e um Session e como um Connection. Temos dois metodos bastante simples, um e o inserirProduto, que salva um novo produto no banco de dados, inclusive utilizando uma transacao. E um metodo listarProdutos que lista todos os produtos encontrados no banco de dados.Se executarmos o programa veremos algo semelhante ao seguinte:Hibernate: call next value for hibernate_sequence Hibernate: insert into Produto (nome, id) values (?, ?) Produto salvo Hibernate: select produto0_.id as id0_, produto0_.nome as nome0_ from Produto produto0_ 10 Shampoo Pronto! Ja pode agora utilizar o hibernate nos seus projetos. Veja a documentacao de referencia no site http://www.hibernate.org para mais exemplos de consultas, operacoes