Este problema me surgió después de que en intellij vi una forma de conectar la base de datos y desde ahi quise crear la persistencia, ya tenia creada la persistencia incluso no vi que modificara nada de la persistencia, pero al querer hacer modificaciones a la base de datos me salia este error
Exception in thread "main" java.lang.ExceptionInInitializerError
at RegistroProductos.main(RegistroProductos.java:14)
Caused by: javax.persistence.PersistenceException: [PersistenceUnit: tienda] Unable to build Hibernate SessionFactory
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.persistenceException(EntityManagerFactoryBuilderImpl.java:1597)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1503)
at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:56)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)
at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
at com.latam.alura.tienda.utilitis.JPAUtilitis.<clinit>(JPAUtilitis.java:8)
... 1 more
Caused by: org.hibernate.MappingException: identifier mapping has wrong number of columns: com.latam.alura.tienda.ProductosEntity type: object
at org.hibernate.mapping.RootClass.validate(RootClass.java:273)
at org.hibernate.boot.internal.MetadataImpl.validate(MetadataImpl.java:359)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:314)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:471)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1498)
... 5 more
mi archivo persistencia es este, trate de camnbiar a una base de datos mysql pero aun asi no funciono
<?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">
<!-- Configuración de la base de datos -->
<properties>
<!-- Nombre del controlador de la base de datos (depende del DBMS que estés utilizando) -->
<property name="javax.persistence.jdbc.driver" value="com.mysql.cj.jdbc.Driver"/>
<!-- URL de conexión a la base de datos -->
<property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/tienda?serverTimezone=UTC"/>
<!-- Usuario y contraseña de la base de datos -->
<property name="javax.persistence.jdbc.user" value="root"/>
<property name="javax.persistence.jdbc.password" value="sasa"/>
<!-- Dialecto de Hibernate (depende del DBMS que estés utilizando) -->
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
<!-- Estrategia para la creación de tablas: update, create, create-drop, none, etc. -->
<property name="hibernate.hbm2ddl.auto" value="update"/>
<!-- Muestra las sentencias SQL en la consola -->
<property name="hibernate.show_sql" value="true"/>
</properties>
</persistence-unit>
</persistence>
cree otro proyecto donde agrege la base de mysql y ahora me dice
Caused by: java.sql.SQLSyntaxErrorException: Table 'tienda.productos' doesn't exist
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:121)
at com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:122)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeInternal(ClientPreparedStatement.java:916)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1061)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdateInternal(ClientPreparedStatement.java:1009)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeLargeUpdate(ClientPreparedStatement.java:1320)
at com.mysql.cj.jdbc.ClientPreparedStatement.executeUpdate(ClientPreparedStatement.java:994)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.executeUpdate(ResultSetReturnImpl.java:197)
... 21 more