Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ghusta/matrice-versions-spring-hibernate
Matrice des versions Spring / Hibernate / Java / Tomcat - 🇫🇷
https://github.com/ghusta/matrice-versions-spring-hibernate
hibernate matrix spring tomcat
Last synced: about 2 months ago
JSON representation
Matrice des versions Spring / Hibernate / Java / Tomcat - 🇫🇷
- Host: GitHub
- URL: https://github.com/ghusta/matrice-versions-spring-hibernate
- Owner: ghusta
- Created: 2018-01-05T16:02:27.000Z (almost 7 years ago)
- Default Branch: master
- Last Pushed: 2024-08-27T18:51:27.000Z (4 months ago)
- Last Synced: 2024-08-27T20:50:52.776Z (4 months ago)
- Topics: hibernate, matrix, spring, tomcat
- Homepage:
- Size: 74.2 KB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.adoc
Awesome Lists containing this project
README
= Matrice des versions Spring / Hibernate / Java / Tomcat
:encoding: utf-8
:toc: auto
:toclevels: 3
:icons: font== Matrice globale
|===
| Spring Framework | Hibernate | Java | Tomcat| 6.0
| 5.5+ +
6.0 pour JPA
| 17
| 10| 5.3
| 5.2+
| 8+
| 8.5+| 5.0
| 5.0+
| 8+
| 8.5+| 4.3
| [3-5.2]
| 1.6+
| 6+| 3.2
| [3.x-4.2]
| 1.6+
| 6+| 2.5
| [3.2-3.6]
| 1.6+
| 6+
|===== Matrice compatibilité Hibernate
|===
| Hibernate ORM | Java | JPA | Jakarta Persistence| 7.0 footnote:[https://in.relation.to/2024/04/16/orm-70alpha1/[Hibernate 7.0.0.Alpha1]]
| 17+
| N/A
| 3.2| 6.6 footnote:[https://in.relation.to/2024/08/08/orm-660/[Hibernate 6.6.0.Final]]
| 11, 17 ou 21
| N/A
| 3.1| 6.5 footnote:[https://in.relation.to/2024/04/25/orm-650/[Hibernate 6.5.0.Final]]
| 11, 17 ou 21
| N/A
| 3.1| 6.4
| 11, 17 ou 21
| N/A
| 3.1| 6.3
| 11, 17 ou 21
| N/A
| 3.1| 6.2
| 11, 17, 20 ou 21
| N/A
| 3.1| 6.1
| 11, 17 ou 18
| N/A
| 3.1 and 3.0| 6.0
| 11, 17 ou 18
| N/A
| 3.0| 5.6
| 8, 11, 17 ou 18
| 2.2
| 3.0 +
(Maven : https://search.maven.org/artifact/org.hibernate/hibernate-core-jakarta[hibernate-core-jakarta])| 5.5
| 8, 11 ou 17
| 2.2
| 3.0 +
(Maven : https://search.maven.org/artifact/org.hibernate/hibernate-core-jakarta[hibernate-core-jakarta])| 5.4
| 8, 11 ou 17 (avec 5.4.32+)
| 2.2
| N/A| 5.3
| 8 +
11 support partiel -> 5.3.3+ footnote:[v5.3.3 contient https://github.com/raphw/byte-buddy/blob/master/release-notes.md#5-july-2018-version-1813[ByteBuddy 1.8.13]] +
11 support complet -> 5.3.8+ footnote:[v5.3.8 introduit https://github.com/raphw/byte-buddy/blob/master/release-notes.md#29-september-2018-version-190[ByteBuddy 1.9.0], avec support complet de JDK 11 (voir https://github.com/hibernate/hibernate-orm/commit/f388420ecaba2553eaee53cedc335fea6262eea1[commit pour HHH-13005])] +
17 -> 5.3.22+ footnote:[Support de JDK 17 introduit par https://github.com/raphw/byte-buddy/blob/master/release-notes.md#21-february-2021-version-11021[ByteBuddy 1.10.21] (voir https://github.com/hibernate/hibernate-orm/commit/e61eff291320f83af6552eec7cf3a7bb7ddd9f59[commit pour HHH-14463], https://github.com/hibernate/hibernate-orm/commit/4fb18e27e3cecae458f12236dbe21b6761c2d7bf[commit] pour https://hibernate.atlassian.net/browse/HHH-14771[HHH-14771])]
| 2.2
| N/A| 5.2
| 8
| 2.1
| N/A| 5.1
| 6/7/8 -> 5.1.3; +
7/8 -> 5.1.16; +
8 pour 5.1.17
| 2.1
| N/A| 5.0
| 6, 7 ou 8
| 2.1
| N/A| 4.3
| 6+
| 2.1
| N/A| 4.2
| 6+
| 2.0
| N/A| 3.6
| 1.5+
| 2.0
| N/A| 3.5
| 1.4+
| 2.0
| N/A| 3.2
| 1.4+
| 1.0
| N/A
|===Références :
- http://hibernate.org/orm/releases/#compatibility-matrix[Hibernate compatibility matrix]
- https://github.com/hibernate/hibernate-orm/wiki/Migration-Guides[Migration Guides]
- http://in.relation.to/2018/09/13/using-hibernate-orm-with-jdk11/[Using Hibernate ORM with JDK 11] : Hibernate ORM 5.3+
- https://in.relation.to/2021/09/14/ready-for-jdk17/[Hibernate: all systems go for Java 17]
- https://jakarta.ee/specifications/persistence/[Jakarta Persistence]== Matrice compatibilité Spring
- https://projects.spring.io/spring-framework/
- https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/overview.html#overview[Spring Framework Overview]
- https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Versions#upgrades[Spring Upgrades]
- https://docs.spring.io/spring-framework/docs/3.2.x/spring-framework-reference/htmlsingle/#spring-whats-new
- https://docs.spring.io/spring-framework/docs/2.5.x/reference/new-in-2.html#new-in-2-migrating-jdk=== Matrice compatibilité Spring + Java
|===
| Spring FWK | Java| 6.2.x
| [17-25 (expected)] _Note 2_| 6.1.x
| [17-23] _Note 2_| 6.0.x
| [17-21] _Note 2_, _Note 3_, _Note 4_, _Note 5_| 5.3.x
| [8-21 (as of https://github.com/spring-projects/spring-framework/milestone/315[5.3.26])] _Note 2_| 5.2.x
| [8-15]| 5.1.x
| [8-12]| 5.0.x
| [8-10]. _Note 2_| 4.3.x
| [6-8]| 4.x
| 6+| 3.x
| [5-7]. _Note 1_| 2.5
| 1.4+
|===- _Note 1_ : Support Java 8 limité sur Spring 3.x, restreint au format de bytecode 1.7 (https://spring.io/blog/2013/05/21/spring-framework-4-0-m1-3-2-3-available/)
- _Note 2_ : Reprise versions JDK supportées du https://github.com/spring-projects/spring-framework/wiki/Spring-Framework-Versions#jdk-version-range[wiki Spring]
- _Note 3_ : https://springone.io/2021/sessions/from-spring-framework-5-3-to-6-0[From Spring Framework 5.3 to 6.0] (SpringOne 2021)
- _Note 4_ : https://spring.io/blog/2021/09/02/a-java-17-and-jakarta-ee-9-baseline-for-spring-framework-6[A Java 17 and Jakarta EE 9 baseline for Spring Framework 6] (2021)
- _Note 5_ : https://spring.io/blog/2022/03/28/an-update-on-java-17-adoption[An update on Java 17+ adoption] (2022)=== Matrice compatibilité Spring + Hibernate
|===
| Spring FWK | Hibernate| 6.0.x
| Compatible Hibernate 5.5/5.6. +
Support Hibernate 6.x en tant que provider JPA (cf. https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/orm/jpa/LocalContainerEntityManagerFactoryBean.html[`LocalContainerEntityManagerFactoryBean`]). +
_Notes 10, 7_| 5.3.x
| Hibernate [5.2-5.4]. _Note 9_| 5.2.x
| Hibernate [5.0-5.4]. _Note 8_| 5.1.x
| JPA 2.1+ ou Hibernate [5.0-5.3]. _Note 5_| 5.0.x
| JPA 2.1+ ou Hibernate [5.0-5.2]. _Note 1_| 4.3.x
| [3.6-5.2] _Note 4_| 4.0.x
| [3.6-4]. _Note 2_| 3.2.x
| [3-4.2.x]. _Note 3_| 3.0.x
| [3.2-3.6]
|===* _Note 1_ : https://docs.spring.io/spring/docs/5.0.2.RELEASE/spring-framework-reference/data-access.html#orm-hibernate
* _Note 2_ : Voir https://docs.spring.io/spring/docs/4.0.0.RELEASE/spring-framework-reference/html/orm.html#orm-hibernate
* _Note 3_ : Hibernate 4.2 d'après le POM de _spring-orm_ 3.2.18
* _Note 4_ : https://github.com/spring-projects/spring-framework/issues/18899[Support for Hibernate ORM 5.2]
* _Note 5_ : https://github.com/spring-projects/spring-framework/issues/20850[Support for Hibernate ORM 5.3]
* _Note 6_ : https://github.com/spring-projects/spring-framework/issues/22128[Support for Hibernate ORM 6.0] (postponed)
* _Note 7_ : https://springone.io/2021/sessions/from-spring-framework-5-3-to-6-0[From Spring Framework 5.3 to 6.0] - new baseline contains Jakarta EE 9 / Hibernate ORM 6 -> 🎬 https://www.youtube.com/watch?v=btvh21K3yvU&t=604s
* _Note 8_ : Javadoc dans https://github.com/spring-projects/spring-framework/blob/5.2.x/spring-orm/src/main/java/org/springframework/orm/hibernate5/LocalSessionFactoryBean.java
* _Note 9_ :
** Javadoc dans https://github.com/spring-projects/spring-framework/commit/ba65cef52bbb28e8286faf6d36b5a7ed2b253fa5#diff-236ca7afd9b7f26eacc5c5119d5c0e02b567da3d9d0ea2981c959f656b03f485
** issue https://github.com/spring-projects/spring-framework/issues/25533
** doc : https://docs.spring.io/spring-framework/docs/5.3.x/reference/html/data-access.html#orm-hibernate
* _Note 10_ : Javadoc dans https://github.com/spring-projects/spring-framework/blob/6.0.x/spring-orm/src/main/java/org/springframework/orm/hibernate5/LocalSessionFactoryBean.java==== Persistance avec Hibernate
Voir la classe `LocalSessionFactoryBean` dans les packages `org.springframework.orm.hibernate3`, `org.springframework.orm.hibernate4`, `org.springframework.orm.hibernate5`.
NOTE: La classe `org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean` est remplacée par `org.springframework.orm.hibernate4.LocalSessionFactoryBean`.
==== Persistance avec JPA
Voir la classe `LocalContainerEntityManagerFactoryBean` dans le package `org.springframework.orm.jpa` par exemple.
== Notes diverses
=== Refactoring automatisé avec _OpenRewrite_
Un outil propose d'appliquer du refactoring de code ou des montées de versions des librairies de façon *automatisée*.
Il s'agit de https://docs.openrewrite.org/[OpenRewrite].Ces refactorings sont présentés sous la forme de "recettes" (_recipes_).
Un catalogue de _recipes_ est présenté ici : https://docs.openrewrite.org/recipes.==== _Recipes_ pour l'écosystème Spring
Il existe de nombreuses _recipes_ pour l'écosystème Spring, présentées ici : https://docs.openrewrite.org/recipes/java/spring.
Et en particulier pour _Spring Framework_ : https://docs.openrewrite.org/recipes/java/spring/framework.
Par exemple :
* link:https://docs.openrewrite.org/recipes/java/spring/framework/upgradespringframework_5_0[Migrate to Spring Framework 5.0]
* link:https://docs.openrewrite.org/recipes/java/spring/framework/upgradespringframework_5_1[Migrate to Spring Framework 5.1]
* link:https://docs.openrewrite.org/recipes/java/spring/framework/upgradespringframework_5_2[Migrate to Spring Framework 5.2]
* link:https://docs.openrewrite.org/recipes/java/spring/framework/upgradespringframework_5_3[Migrate to Spring Framework 5.3]