/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package util;
import java.sql.SQLException;
import java.util.List;
import org.hibernate.Session;
import org.hibernate.Transaction;
/**
*
* @author jean
*/
public class teste {
private static Session session;
public teste(){
}
public static void main(String[] args) throws SQLException{
Transaction tx = null;
session = ConnectionFactory.getInstance();
tx = session.beginTransaction();
Pessoa jean = new Pessoa(1,"Jean");
session.save(jean);
tx.commit();
List list = session.createQuery("from util.Pessoa").list();
System.out.print(list);
session.close();
}
}
package util;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
/**
* Cria Conexao remota ou local com banco
* @author jean
*/
public class ConnectionFactory {
private static SessionFactory sessionFactory;
private static ThreadLocal<Session> threadLocal = new ThreadLocal<Session>();
private static String conf = "/util/hibernate.cfg.xml";
/**
* Cria a conexao e decide se a mesma sera
* local ou remota.
*/
static{
try{
sessionFactory = new AnnotationConfiguration().configure("hibernate.cfg.xml")
.buildSessionFactory();
}catch(Throwable t){
throw new ExceptionInInitializerError(t);
}
}
/**
* @return Retorna a instancia da conexao
*/
public static Session getInstance(){
Session session = (Session) threadLocal.get();
session = sessionFactory.openSession();
threadLocal.set(session);
return session;
}
}
<?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>
<property name="connection.driver_class">org.hsqldb.jdbcDriver</property>
<property name="connection.url">jdbc:hsqldb:file:banco/dedao</property>
<property name="connection.username">sa</property>
<property name="connection.password"></property>
<property name="connection.pool_size">1</property>
<property name="dialect">org.hibernate.dialect.HSQLDialect</property>
<property name="cache.provider_class">org.hibernate.cache.NoCacheProvider</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<mapping class="util.Pessoa" />
</session-factory>
</hibernate-configuration>
Ele nao imprimi nada alem de uma posicao na memoria.
e no arquivo do banco nao aparece tabela e nem insert.
Se alguem tiver uma sugestao melhor para esse problema
eu agradeco. pois estou axando que instalar o postgre em cada terminal
nao vale a pena. Obrigado