Instalación

  1. Descargamos las librerías de Hibernate: http://hibernate.org/orm/releases/
  2. De entre los ficheros descargados, copio la carpeta lib en mi proyecto.
  3. Copio el driver de mysql en mi proyecto.
  4. Refresco el proyecto para que coja los cambios realizados.
  5. Añado al java build path del proyecto los jar que están dentro de la carpeta required, así como el driver MySQL.
  6. Creamos el fichero hibernate.cfg.xml en la carpeta src y le pegamos el siguiente código:
    <?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="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="hibernate.connection.isolation">2</property>
    <property name="hibernate.connection.password">pp</property>
    <property name="hibernate.connection.pool_size">10</property>
    <property name="hibernate.connection.url">jdbc:mysql://localhost/prueba</property>
    <property name="hibernate.connection.username">root</property>
    <property name="hibernate.current_session_context_class">managed</property>
    <property name="hibernate.dialect">org.hibernate.dialect.MySQL57Dialect</property>
    <property name="hibernate.show_sql">true</property>
    <property name="hbm2ddl.auto">update</property>
    </session-factory>
    </hibernate-configuration>
  7. Creamos el fichero HibernateUtil.java para establecer la conexión
    public class HibernateUtil {
    	private static StandardServiceRegistry registry;
    	private static SessionFactory sessionFactory;
    
    	public static SessionFactory getSessionFactory() {
    		if (sessionFactory == null) {
    			try {
    				registry = new StandardServiceRegistryBuilder().configure().build();
    				MetadataSources sources = new MetadataSources(registry);
    				sources.addAnnotatedClass(Alumno.class);
    				Metadata metadata = sources.getMetadataBuilder().build();
    				sessionFactory = metadata.getSessionFactoryBuilder().build();
    			} catch (Exception e) {
    				e.printStackTrace();
    				if (registry != null) {
    					StandardServiceRegistryBuilder.destroy(registry);
    				}
    			}
    		}
    		return sessionFactory;
    	}
    }
  8. Creamos el paquete entity (pojos de hibernate) y una clase de prueba
    import javax.persistence.Entity;
    import javax.persistence.Id;
    
    @Entity
    public class Alumno {
    	@Id
    	@GeneratedValue(strategy=GenerationType.IDENTITY)//Para generar números autoincrementados
    	private int id;
    	private String nombre;
    	private int edad;
    
    	//Tener en cuenta que si definimos un constructor, este debe ser público
    	public int getId() {
    		return id;
    	}
    
    	public void setId(int id) {
    		this.id = id;
    	}
    
    	public String getNombre() {
    		return nombre;
    	}
    
    	public void setNombre(String nombre) {
    		this.nombre = nombre;
    	}
    
    	public int getEdad() {
    		return edad;
    	}
    
    	public void setEdad(int edad) {
    		this.edad = edad;
    	}
    
    }

Errores de puertos

Si al arrancar el servidor de apache y el servidor de mysql tuviese algún conflicto de puertos...

icono de mandar un mailPreguntame lo que quieras!
Pablo Monteserín
contacta conmigoPablo Monteserín

El servicio de resolución de dudas técnicas es sólo para los usuarios premium. Si tienes cualquier otra duda, usa el formulario de contacto. ¡Gracias!