hibernate-demos icon indicating copy to clipboard operation
hibernate-demos copied to clipboard

Repository for demos of various Hibernate projects

hibernate-demos

This repository contains demos used live during presentations or in blog posts; The following demos are currently available:

  • Hibernate ORM

    • core/Basic: simple comparison between JDBC, ORM, and JPA
    • core/Fetching Strategies: "when" (laziness) and "how" (fetch style)
    • core/Value Generation: annotations allowing in-memory and DB generated properties, both for INSERT and INSERT/UPDATE actions
    • core/Multi-Tenancy: multiple, concurrent databases and clients from a single Hibernate instance
    • core/Caching: entity second level cache (2LC) and query cache
    • core/Envers: historical/audited data
    • core/Spatial: geographical data
    • osgi: tutorials demonstrating all possible ORM OSGi configurations
  • Hibernate OGM

    • hiking-demo: Demo project used for the talk "Hibernate OGM: Talking to NoSQL in Red Hat JBoss EAP" presented at Red Hat Summit 2014. It shows how to use MongoDB as data store in a Java EE application through JPA / Hibernate OGM.
  • Hibernate Search

    • hsearch-elasticsearch-wikipedia: Demonstrates a REST service using Hibernate Search + Elasticsearch to search a large dataset from Wikipedia.
    • hsearch-quarkus: Demonstrates a REST service with CRUD and full-text search features implemented using Quarkus, Hibernate Search and Elasticsearch. Accompanies the blog post https://in.relation.to/2019/11/12/hibernate-search-quarkus/
    • hsearch-feature-examples: Demonstrates various features of Hibernate Search 6 with Elasticsearch in Quarkus. Used in Quarkus insights Episode 32.
    • [OBSOLETE] hsearch-with-elasticsearch: Shows how to use the Elasticsearch backend in Hibernate Search 5.x. Used for the talk "From Hibernate to Elasticsearch in no Time" at JavaZone 2016.
  • Hibernate Validator

    • threeten-extra-validator-example: Constraint validators for ThreeTen Extra date/time types. Accompanies the blog post http://in.relation.to/2017/03/02/adding-custom-constraint-definitions-via-the-java-service-loader/
    • time-duration-validator-example: Custom constraint and validator, retrieved via the service loader. Accompanies the blog post http://in.relation.to/2017/03/02/adding-custom-constraint-definitions-via-the-java-service-loader/
    • updating-hv-in-wildfly: How to upgrade WildFly 10 to the latest version of Hibernate Validator. Accompanies the blog post http://in.relation.to/2017/04/04/testing-bean-validation-2-0-on-wildfly-10/
    • javafx-validation-example: Shows usage of Bean Validation 2 with JavaFX
    • custom-value-extractors: Shows how to put constraints to custom containers such as Guava's Multimap. Accompanies the blog post http://in.relation.to/2018/02/26/putting-bean-validation-constraints-to-multimaps/
  • Java 9

    • multi-release-jar-demo: Shows how to build multi-release JARs with Java 9. Accompanies the blog post http://in.relation.to/2017/02/13/building-multi-release-jars-with-maven/
    • custom-jlink-plugin: Shows how to customize Java 9 modular runtime images with jlink plug-ins. The example shows a plug-in for adding a Jandex annotation index for one or more modules to the runtime image.
  • Other

    • wildfly-patch-creation: How to create WildFly patch files. Accompanies the blog post http://in.relation.to/2017/05/29/creating-patches-for-wildfly/
    • cdi-jpa-testing: How to run JUnit tests using CDI, JPA and JTA

License

If not stated otherwise, the demos are licensed under the Apache License, Version 2.0 (see https://www.apache.org/licenses/LICENSE-2.0). Refer to the headers of individual files for specific license and copyright information, in particular of included library files.