Insercao hibernate

4 respostas
O

entao pessoal estou tentando inserir objetos em um banco postgresql e estou conseguindo,
porém cada vez que utilizo o metodo de insercao ele simplesmenete apaga tudo que tem no banco e inseri o q esta sendo passado como parametro para o metodo de insercao que eu criei(ou melhor, vi em um exemplo)

package Hiber;

import hiber.Amigos;
import hiber.AmigosDAO;
import org.hibernate.Session;

public class Gerenciadora {
    
    public static void main(String[] args) {
        Gerenciadora g = new Gerenciadora();
        
        
        g.inserir("navia", 2, "rua betel");
            

        AmigosDAO.getSessionFactory().close();
    }

    private void createAndStoreEvent(String title,int id,String endereco) {
        Session session = AmigosDAO.getSessionFactory().getCurrentSession();
        
        
        Amigos amigo=new Amigos();
        amigo.setid(id);
        amigo.setNome(title);
        amigo.setendereco(endereco);

        session.save(amigo);

        session.getTransaction().commit();

    }
    
   

}

por exemplo qnd eu executar esse metodo ele apagara todo o conteudo do banco e restara apenas o registro inserido
se alguem puder ajudar!!

4 Respostas

O

alguem??

O

talves a classe amigosDAO ajude:

package hiber;

import org.hibernate.*;
import org.hibernate.cfg.*;




public class AmigosDAO {
    private static final SessionFactory factory;
    
    static {
        try {
            // Create the SessionFactory from hibernate.cfg.xml
            factory = new Configuration().configure().buildSessionFactory();
        } catch (Throwable ex) {
            // Make sure you log the exception, as it might be swallowed
            System.err.println("Initial SessionFactory creation failed." + ex);
            throw new ExceptionInInitializerError(ex);
        }
    }
    
    public static SessionFactory getSessionFactory() {
        return factory;
    }
}
O

pessoal sera q ninguem pode ajudar???
a duvida faz sentido pois executei o projeto sem antes criar a tabela lá no postgre, e ele criou sozinho uma nova tabela!!
ou seja, todo vez que rodo o projeto ele cria uma novo tabela e perde-se os dados da tabela anterior
isso é normal??? estou comentendo algum erro???

O

vou postar o arquivo hibernate.cfg.xml

<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
        "-//Hibernate/Hibernate Configuration DTD 3.0//EN"
        "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

    <session-factory>

        <!-- Database connection settings -->
        <property name="connection.driver_class">org.postgresql.Driver</property>
        <property name="connection.url">jdbc:postgresql://localhost:5432</property>
        <property name="connection.username">postgres</property>
        <property name="connection.password">161086</property>
       
       <!-- JDBC connection pool (use the built-in) -->
        <property name="connection.pool_size">1</property>

        <!-- SQL dialect -->
        <property name="dialect">org.hibernate.dialect.PostgreSQLDialect</property>

        <!-- Enable Hibernate's automatic session context management -->
        <property name="current_session_context_class">thread</property>

        <!-- Disable the second-level cache  -->
        <property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
  
        

        <!-- Echo all executed SQL to stdout -->
        <property name="show_sql">true</property>  
        


        <mapping resource="Amigos.hbm.xml"/>

    </session-factory>

</hibernate-configuration>

obrigado

Criado 5 de março de 2008
Ultima resposta 10 de mar. de 2008
Respostas 4
Participantes 1