Skip to content

MaQuiNa1995/Hibernate-Springboot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Si vais al código de la clase teneis javadoc explicado de como se hace y que es cada cosa

Todos los nombres de las entidades se ven afectadas por CustomPhysicalNamingStrategy

Si te fijas ninguna columna tiene @column, con esta clase no nos hace falta Todo camelCase se convertirá a mayúsculas y "SnakeCase"

Todas las entidades extienden de AbstractEntidadSimple

Esta clase tiene 6 campos id y nombre Depende el parámetro que pongas en la entidad padre el id será de un tipo u otro Es decir puedes hacer que el id sea una String un Integer o un Long en cada una de las clases Hijas (Siempre usamos Warpper)

Adicionalmente esta clase anteriormente mencionada tiene herencia con AbstractAuditable

Esta clase tiene 4 campos útiles de auditoria para cuando se persiste o modifica una entidad y otros 2 para saber quien ha hecho cada operación La implementación está hardcodeada porque aqui no he metido spring security

Adicionalmente tenemos una columna @version útil para poder usar la estrategia de hibernate llamada "optimistic locking mechanism" en el que creamos una manera segura de tratamiento de posibles updates y deletes concurrentes de una entidad

Entidad Con Clave Compuesta

Entidad Clave Primaria
Elementalista ElementalistaPk

Relaciones One2One (Izquierda la dominante):

Bidireccional

Dominante Esclavo Peculiaridad
Rango Técnica
Personaje Oficio Tabla intermedia
TipoMagia Mago Comparte el mismo Id

Unidireccional

Dominante Esclavo Peculiaridad
Ninja Ninjutsu

Relaciones One2Many (Izquierda la dominante)

Bidireccional

Dominante Esclavo Peculiaridad
Poción Alquimista
Invocador InvocaciónSuprema Tabla intermedia

Unidireccional

Dominante Esclavo Peculiaridad
Monje TécnicaKi

Relaciones Many2Many (Izquierda la dominante):

Bidireccional

Dominante Esclavo Peculiaridad
Arma Calidad Tabla intermedia

Unidireccional

Dominante Esclavo Peculiaridad
Domador Bestia

About

Ejemplo completo de Hibernate con todas las relaciones

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages