Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ContactosDAO.java
- public class ContactosDAO
- {
- private Session sesion;
- private Transaction tx;
- public long guardaContacto(Contacto contacto) throws HibernateException
- {
- long id = 0;
- try
- {
- iniciaOperacion();
- id = (Long) sesion.save(contacto);
- tx.commit();
- } catch (HibernateException he)
- {
- manejaExcepcion(he);
- throw he;
- } finally
- {
- sesion.close();
- }
- return id;
- }
- <?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>
- <!-- parametros para la conexion a la base de datos -->
- <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
- <property name="connection.url">jdbc:oracle:thin:@//localhost:1521</property>
- <property name="connection.username">user</property>
- <property name="connection.password">pass</property>
- <!-- Configuracion del pool interno -->
- <property name="connection.pool_size">1</property>
- <!-- Dialecto de la base de datos -->
- <property name="dialect">org.hibernate.dialect.MySQL5Dialect</property>
- <!-- Otras propiedades importantes -->
- <property name="show_sql">true</property>
- <property name="hbm2ddl.auto">create-drop</property>
- <!-- Archivos de mapeo -->
- <mapping resource="hibernate/mapeos/mapeos/Contacto.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
- public class Main
- {
- /**
- * @param args the command line arguments
- */
- public static void main(String[] args)
- {
- ContactosDAO contactosDAO = new ContactosDAO();
- Contacto contactoRecuperado = null;
- long idAEliminar = 0;
- //Creamos tes instancias de Contacto
- Contacto contacto1 = new Contacto("Contacto 1", "contacto1@contacto.com", "12345678");
- Contacto contacto2 = new Contacto("Contacto 2", "contacto2@contacto.com", "87654321");
- Contacto contacto3 = new Contacto("Contacto 3", "contacto3@contacto.com", "45612378");
- //Guardamos las tres instancias, guardamos el id del contacto1 para usarlo posteriormente
- idAEliminar = contactosDAO.guardaContacto(contacto1);
- contactosDAO.guardaContacto(contacto2);
- contactosDAO.guardaContacto(contacto3);
- //Modificamos el contacto 2 y lo actualizamos
- contacto2.setNombre("Nuevo Contacto 2");
- contactosDAO.actualizaContacto(contacto2);
- //Recuperamos el contacto1 de la base de datos
- contactoRecuperado = contactosDAO.obtenContacto(idAEliminar);
- System.out.println("Recuperamos a " + contactoRecuperado.getNombre());
- //Eliminamos al contactoRecuperado (que es el contacto3)
- contactosDAO.eliminaContacto(contactoRecuperado);
- //Obtenemos la lista de contactos que quedan en la base de datos y la mostramos
- List<Contacto> listaContactos = contactosDAO.obtenListaContactos();
- System.out.println("Hay " + listaContactos.size() + "contactos en la base de datos");
- for (Contacto c : listaContactos)
- {
- System.out.println("-> " + c.getNombre());
- }
- }
- WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)
- may 16, 2016 9:54:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001005: using driver [com.mysql.jdbc.Driver] at URL [jdbc:oracle:thin:@//localhost:1521/idbis.frontdb.ugr.es [joram on JORAM]]
- may 16, 2016 9:54:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001001: Connection properties: {user=joram, password=****}
- may 16, 2016 9:54:39 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001003: Autocommit mode: false
- may 16, 2016 9:54:39 PM org.hibernate.engine.jdbc.connections.internal.PooledConnections <init>
- INFO: HHH000115: Hibernate connection pool size: 1 (min=1)
- Ocurrió un error en la inicialización de la SessionFactory: org.hibernate.service.spi.ServiceException: Unable to create requested service [org.hibernate.engine.jdbc.env.spi.JdbcEnvironment]
- Exception in thread "main" java.lang.NullPointerException
- at hibernate.mapeos.dao.ContactosDAO.guardaContacto(ContactosDAO.java:48)
- at hibernate.mapeos.Main.main(Main.java:32)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement