Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
4
respuestas

No se me crea la tabla en hibernate

Hola,

Alguno sabe por qué razón parece ser que no me está funcionando algo de Hibernate? He realizado todos los pasos del instructor pero cuando le doy "Run" a los códigos, en la consola no me sale lo mismo que le sale al instructor, y yo aun no interpreto bien lo que dicen esas letras rojas. Si alguien pudiera explicarme, lo agradezco mucho.

Este es el código del profesor

Y este es mi código

4 respuestas

Buenas, si te refieres al texto negro sql que le sale al profesor en el output pues tienes que agregar en tu archivo persistence.xml

<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.format_sql" value="true"/>

Hola Miguel Angel...

Y copio el código que dices así no mñas? Sin ponerlo dentro de una etiqueta ya sea de o ??

Gracias por la ayuda, saludos!

Asi es, tienes que agregar esas dos lineas tal cual al resto de lineas que tienes en tu archivo persistence.xml. El proyecto que usa el instructor en esa altura del curso es este

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.2"
    xmlns="http://xmlns.jcp.org/xml/ns/persistence"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_2.xsd">

     <persistence-unit name="tienda" transaction-type="RESOURCE_LOCAL">
        <!-- <class>br.com.alura.tienda.modelo.Producto</class>  -->
        <properties>
            <property name="javax.persistence.jdbc.driver" value="org.h2.Driver"/>
            <property name="javax.persistence.jdbc.url" value="jdbc:h2:mem:loja"/>
            <property name="javax.persistence.jdbc.user" value="sa"/>
            <property name="javax.persistence.jdbc.password" value=""/>
            <property name="hibernate.dialect" value="org.hibernate.dialect.H2Dialect"/>
            <property name="hibernate.show_sql" value="true"/>
            <property name="hibernate.format_sql" value="true"/>
            <property name="hibernate.hbm2ddl.auto" value="update"/>
        </properties>    
    </persistence-unit>
</persistence>

Hola, un gusto saludarlos.

Lo que comenta el compañero Miguel, es para visualizar de una mejor forma la escrita SQL que te sale al momento de persistir un objeto.

La propiedad <property name="hibernate.show_sql" value="true"/> como su nombre lo indica es para ver la escritura del lenguaje SQL en la consola en una sola linea, mientras que <property name="hibernate.format_sql" value="true"/> permite ver de mejor forma la escritura SQL que te sale en consola.

Te enseño una captura de como quedaría en consola: Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad