{"id":82511,"date":"2018-10-10T20:33:20","date_gmt":"2018-10-10T17:33:20","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?page_id=82511"},"modified":"2023-03-06T16:26:28","modified_gmt":"2023-03-06T14:26:28","slug":"jpa-tutorials","status":"publish","type":"page","link":"https:\/\/www.javacodegeeks.com\/jpa-tutorials","title":{"rendered":"JPA Tutorials"},"content":{"rendered":"<p><a href=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\"><img decoding=\"async\" class=\"aligncenter wp-image-112\" style=\"border: none;\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" alt=\"JPA Tutorials\" width=\"300\" height=\"300\" srcset=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg 150w, https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo-70x70.jpg 70w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>In this detailed Resource page, we feature an abundance of <strong>JPA Tutorials<\/strong>!<\/p>\n<p>The <a href=\"https:\/\/en.wikipedia.org\/wiki\/Java_Persistence_API\">Java Persistence API<\/a> (JPA) is a Java application programming interface specification that describes the management of relational data in applications using Java Platform, Standard Edition and Java Platform, Enterprise Edition.<\/p>\n<p>Persistence in this context covers three areas:<\/p>\n<ul>\n<li>the API itself, defined in the <tt>javax.persistence<\/tt> package<\/li>\n<li>the Java Persistence Query Language (JPQL)<\/li>\n<li>object\/relational metadata<\/li>\n<\/ul>\n<p>The reference implementation for JPA is EclipseLink.<\/p>\n<p>A persistence entity is a lightweight Java class whose state is typically persisted to a table in a relational database. Instances of such an entity correspond to individual rows in the table. Entities typically have relationships with other entities, and these relationships are expressed through object\/relational metadata. Object\/relational metadata can be specified directly in the entity class file by using annotations, or in a separate XML descriptor file distributed with the application.<\/p>\n<div class=\"tip\"><strong>Note<\/strong><br \/>\nIf you wish to build up your JPA knowledge first, check out our <a href=\"https:\/\/www.javacodegeeks.com\/2015\/02\/jpa-tutorial.html\">JPA Tutorial \u2013 The ULTIMATE Guide<\/a>.<\/div>\n<p><span data-sheets-value=\"{&quot;1&quot;:2,&quot;2&quot;:&quot;[ulp id='LoQtGl7SXNqSQXjk']&quot;}\" data-sheets-userformat=\"{&quot;2&quot;:513,&quot;3&quot;:[null,0],&quot;12&quot;:0}\">[ulp id=&#8217;LoQtGl7SXNqSQXjk&#8217;]<\/span><\/p>\n<h2>JPA Tutorials \u2013 Getting Started<\/h2>\n<h4>Simple examples based on the Java Persistence API<\/h4>\n<ul>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/java-persistence-xml-example\/\">JPA persistence.xml Example<\/a><br \/>\nIn this standalone JPA example, we are using EclipseLink with MySQL Database. EclipseLink is a popular open source ORM (Object Relation Mapping) tool for Java platform used for mapping an entity to a traditional relational database like Oracle, MySQL etc.<\/li>\n<li><a title=\"Permalink to JPA EntityManager Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-entitymanager-example\/\" rel=\"bookmark\">JPA EntityManager Example<\/a><br \/>\nIn this example, we shall try to demonstrate how to use JPA EntityManager. As the name suggests, an EntityManager is a class that manages the state of the Entity(Persist\/Update\/Delete etc).<\/li>\n<li><a title=\"Permalink to Single table inheritance in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/single-table-inheritance-in-jpa\/\" rel=\"bookmark\">Single table inheritance in JPA<\/a><br \/>\nIn this example we shall show you how to create a single table inheritance in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Set column name and length\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/set-column-name-and-length\/\" rel=\"bookmark\">Set column name and length<\/a><br \/>\nIn this example we shall show you how to set the column name and length in an entity field in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-criteriabuilder-example\/\">JPA CriteriaBuilder Example<\/a><br \/>\nThe Criteria API is a predefined API used to define queries for entities. It is the alternative way of defining a JPQL query. These queries are type-safe, portable and easy to modify by changing the syntax i.e. the JPA queries are mainly used for building the dynamic queries whose exact structure is only known at the runtime. In this tutorial, we will show how to implement the JPA Criteria API with EclipseLink and MySQL in Java.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-crud-example\/\">JPA CRUD Example<\/a><br \/>\nThis is an example of how to perform CRUD functionality in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<\/ul>\n<h2>JPA Tutorials \u2013 Functions<\/h2>\n<h4>Learn the most famous functionalities and operations of the Java Persistence API<\/h4>\n<ul>\n<li><a title=\"Permalink to Persist object with JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/persist-object-with-jpa\/\" rel=\"bookmark\">Persist object with JPA<\/a><br \/>\nWith this example we are going to demonstrate how to persist an object using the JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Find by id in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/find-by-id-in-jpa\/\" rel=\"bookmark\">Find by id in JPA<\/a><br \/>\nIn this example we shall show you how to find an object by id in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Find by class in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/find-by-class-in-jpa\/\" rel=\"bookmark\">Find by class in JPA<\/a><br \/>\nThis is an example of how to find an object by class in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Get single object in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/get-single-object-in-jpa\/\" rel=\"bookmark\">Get single object in JPA<\/a><br \/>\nWith this example we are going to demonstrate how to get a single object in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Remove Entity with JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/remove-entity-with-jpa\/\" rel=\"bookmark\">Remove Entity with JPA<\/a><br \/>\nThis is an example of how to remove an entity using the JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/delete-with-condition-in-jpa\/\">Delete with condition in JPA<\/a><br \/>\nWith this example we are going to demonstrate how to delete with a condition in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to Embedded compound primary key in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/embedded-compound-primary-key-in-jpa\/\" rel=\"bookmark\">Embedded compound primary key in JPA<\/a><br \/>\nWith this example we are going to demonstrate how to create an embedded compound primary key in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications. A composite primary key is usually made up of two or more primitive or JDK object types. Composite primary keys typically arise when mapping from legacy databases when the database key is comprised of several columns. You can specify such a composite primary key with a separate composite primary key class.<\/li>\n<li><a title=\"Permalink to Map Java Enum type in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/map-java-enum-type-in-jpa\/\" rel=\"bookmark\">Map Java Enum type in JPA<\/a><br \/>\nIn this example we shall show you how to map a Java Enum type in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<\/ul>\n<h2>JPA Tutorials \u2013 Queries<\/h2>\n<h4>Learn how to call queries with Java Persistence API<\/h4>\n<ul>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-mappedby-example\/\">JPA mappedBy Example<\/a><br \/>\nIn this tutorial, we will show how to implement the mappedBy annotation in JPA using EclipseLink and MySQL in Java.<\/li>\n<li><a title=\"Permalink to Named query with entity in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/named-query-with-entity-in-jpa\/\" rel=\"bookmark\">Named query with entity in JPA<\/a><br \/>\nThis is an example of how to create a named query with an entity in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications. A named query is a predefined query that you create and associate with a container-managed entity. The named queries are stored on the EntityManager. At run time, you can use the EntityManager to acquire, configure, and execute a named query. Here we create an entity with a named query and use in with EntityManager.<\/li>\n<li><a title=\"Permalink to JPA Relationship Annotations Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-relationship-annotations-example\/\" rel=\"bookmark\">JPA Relationship Annotations Example<\/a><br \/>\nThis article takes you through the relationships between Entities. Generally the relations are more effective between tables in the database and as we already know that in RDBMS every entity(table) must be related to other entities to become meaningful. Here the entity classes are treated as relational tables (concept of JPA).<\/li>\n<li><a title=\"Permalink to JPA Named Query Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa-named-query-example\/\" rel=\"bookmark\">JPA Named Query Example<\/a><br \/>\nIn this article you will learn how to use the JPA @NamedQuery and @NamedNativeQuery annotations. We will start by introducing some general aspects about named queries, then creating simple examples, using both JPQL and native SQL queries, passing parameters to named queries and using vendor-specific query hints. You will then learn how to execute named queries and use optional elements to make use of vendor-specific query hints.<\/li>\n<li><a title=\"Permalink to JPA SQL Stored Procedure Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/jpa-sql-stored-procedure-example\/\" rel=\"bookmark\">JPA SQL Stored Procedure Example<\/a><br \/>\nHere we will discuss about the JPA SQL Stored Procedures, i.e. using database Stored Procedures from JPA (Java Persistance API) along with Cursors, Multiple Parameters (IN &amp; OUT) etc. We have used EclipseLink for our project. However this can also be done with other JPA providers such as Hibernate, Toplink, Spring Data JPA, etc. JPA 2.1 supports calling database stored procedures using the StoredProcedureQuery and @NamedStoredProcedureQuery annotation or XML element.<\/li>\n<li><a title=\"Permalink to JPA Many-to-Many association in SQL and NoSQL databases under Payara\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa-many-many-association-sql-nosql-databases-payara\/\" rel=\"bookmark\">JPA Native SQL Queries Example<\/a><br \/>\nIn this article we will explore the JPA bidirectional @ManyToMany association in a SQL and NoSQL fashion. A @ManyToMany association occurs when multiple records in one table, each correspond to multiple records in a related table. If the records from the second table have an inverse association back to the first table, we say that we have a bidirectional @ManyToMany association.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa-one-one-example\/\">JPA One-to-One Example<\/a><br \/>\nIn this article we will explore the JPA @OneToOne association in a SQL and NoSQL fashion. A @OneToOne association occurs when there is exactly one record in a table that corresponds to exactly one record in a related table. In this case, both tables will contain the same number of records and each row of the first table is linked to another row in the second table.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa-one-many-example\/\">JPA One-to-Many Example<\/a><br \/>\nIn this article we will explore the JPA @OneToMany and @ManyToOne associations in a SQL and NoSQL fashion. A @OneToMany association occurs when each record in one table corresponds to multiple records in a related table. If the records from the second table have an inverse association back to the first table, we say that we have a bidirectional @ManyToOne association.<\/li>\n<li><a title=\"Permalink to JPA Many-to-Many association in SQL and NoSQL databases under Payara\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa-many-many-association-sql-nosql-databases-payara\/\" rel=\"bookmark\">JPA Many-to-Many association in SQL and NoSQL databases under Payara<\/a><br \/>\nIn this article we will explore the JPA bidirectional @ManyToMany association in a SQL and NoSQL fashion. A @ManyToMany association occurs when multiple records in one table, each correspond to multiple records in a related table. If the records from the second table have an inverse association back to the first table, we say that we have a bidirectional @ManyToMany association.<\/li>\n<li><a title=\"Permalink to Many To One Mapping in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/many-to-one-mapping-in-jpa\/\" rel=\"bookmark\">Many To One Mapping in JPA<\/a><br \/>\nIn this example we shall show you how to create a many to one mapping in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to One To Many unidirectional mapping in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/one-to-many-unidirectional-mapping-in-jpa\/\" rel=\"bookmark\">One To Many unidirectional mapping in JPA<\/a><br \/>\nThis is an example of how to use One to Many unidirectional mapping in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a title=\"Permalink to One To Many bidirectional mapping in JPA\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jpa\/one-to-many-bidirectional-mapping-in-jpa\/\" rel=\"bookmark\">One To Many bidirectional mapping in JPA<\/a><br \/>\nWith this example we are going to demonstrate how to use One to Many bidirectional mapping in JPA. The Java Persistence API provides Java developers with an object\/relational mapping facility for managing relational data in Java applications.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/hibernate\/map-composite-primary-key-jpa-hibernate-example\/\">How to map a Composite Primary Key with JPA and Hibernate Example<\/a><br \/>\nIn this tutorial, we will show how to map the Composite Primary Key with JPA and Hibernate using Eclipse Link and MySQL in Java.<\/li>\n<\/ul>\n<h2>JPA Tutorials \u2013 Integrations<\/h2>\n<h4>Learn how to use Java Persistence API with the most powerful 3rd party frameworks<\/h4>\n<ul>\n<li><a title=\"Permalink to Spring Data JPA Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/spring\/spring-data-jpa-example\/\" rel=\"bookmark\">Spring Data JPA Example<\/a><br \/>\nThe goal of Spring Data repository abstraction is to significantly reduce the amount of boilerplate code required to implement data access layers for various persistence stores. If we try to implement a data access layer of an application on our own, we will end up with lots of boilerplate code.<\/li>\n<li><a title=\"Permalink to Spring Data JPARepository Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/spring\/data\/spring-data-jparepository-example\/\" rel=\"bookmark\">Spring Data JPARepository Example<\/a><br \/>\nIn this example, I will demonstrate how to use Spring Data JpaRepository to create, update, delete, and search contact data in a relational database.<\/li>\n<li><a title=\"Permalink to Spring Boot and JPA Example\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/spring\/boot\/spring-boot-jpa-example\/\" rel=\"bookmark\">Spring Boot and JPA Example<\/a><br \/>\nThis example is very straight forward and simple, it should be easy to understand. Let\u2019s begin with our Spring Boot JPA example.<\/li>\n<li><a title=\"Permalink to JSF JPA CRUD Tutorial\" href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/jsf\/jsf-jpa-crud-tutorial\/\" rel=\"bookmark\">JSF JPA CRUD Tutorial<\/a><br \/>\nThis example will show the implementation of basic CRUD (Create, Read, Update, Delete) operations and lets you manage the school\u2019s database in jsf using JPA with EclipseLink &amp; MySQL.<\/li>\n<li><a title=\"Permalink to Batoo JPA \u2013 15x Faster Than The Leading JPA Provider\" href=\"https:\/\/www.javacodegeeks.com\/2012\/10\/batoo-jpa-15x-faster-than-the-leading-jpa-provider.html\" rel=\"bookmark\">Batoo JPA \u2013 15x Faster Than The Leading JPA Provider<\/a><br \/>\nBatoo JPA deviates from the specification almost zero, making it easy for existing JPA applications be migrated to Batoo JPA, while requiring no additional learning phase to start using it.<\/li>\n<li><a title=\"Permalink to JBoss 4.2.x Spring 3 JPA Hibernate Tutorial\" href=\"https:\/\/www.javacodegeeks.com\/2010\/05\/jboss-42x-spring-3-jpa-hibernate.html\" rel=\"bookmark\">JBoss 4.2.x Spring 3 JPA Hibernate Tutorial<\/a><br \/>\nIn this tutorial we will talk about how to integrate Spring with JPA and Hibernate.<\/li>\n<li><a title=\"Permalink to JBoss 4.2.x Spring 3 JPA Hibernate Tutorial Part #2\" href=\"https:\/\/www.javacodegeeks.com\/2010\/05\/jboss-42x-spring-3-jpa-hibernate_21.html\" rel=\"bookmark\">JBoss 4.2.x Spring 3 JPA Hibernate Tutorial Part #2<\/a><br \/>\nIn this tutorial we will demonstrate how to create a Spring service to expose functionality to the end user.<\/li>\n<li><a title=\"Permalink to GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial\" href=\"https:\/\/www.javacodegeeks.com\/2010\/05\/gwt-2-spring-3-jpa-2-hibernate-35-2.html\" rel=\"bookmark\">GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial<\/a><br \/>\nThis step by step guide will present how to develop a simple web application using Google\u2019s Web Toolkit (GWT) for the rich client and Spring as the back \u2013 end, server side framework.<\/li>\n<li><a title=\"Permalink to GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial \u2013 Eclipse and Maven 2 showcase\" href=\"https:\/\/www.javacodegeeks.com\/2010\/07\/gwt-2-spring-3-jpa-2-hibernate-35.html\" rel=\"bookmark\">GWT 2 Spring 3 JPA 2 Hibernate 3.5 Tutorial \u2013 Eclipse and Maven 2 showcase<\/a><br \/>\nThis step by step guide will present how to develop a simple web application using Google\u2019s Web Toolkit (GWT) for the rich client and Spring as the back \u2013 end, server side framework. The sample web application will provide functionality to make CRUD (Create Retrieve Update Delete) operations to a database. For the data access layer we will use JPA over Hibernate and for a database we will use Hypersonic.<\/li>\n<li><a title=\"Permalink to Spring 3 RESTful Web Services\" href=\"https:\/\/www.javacodegeeks.com\/2010\/06\/spring-3-restful-web-services.html\" rel=\"bookmark\">Spring 3 RESTful Web Services<\/a><br \/>\nWe are going to use our GWTSpringInfinispanHornetQ project and expose our \u201cemployeeService\u201d CRUD functionality as a RESTful Web service. Of course you can follow this article just to be informed on how to expose your Spring services as RESTful Web services.<\/li>\n<li><a title=\"Permalink to Spring Data JPA Example with Spring Boot\" href=\"https:\/\/www.javacodegeeks.com\/2018\/03\/spring-data-jpa-example-with-spring-boot.html\" rel=\"bookmark\">Spring Data JPA Example with Spring Boot<\/a><br \/>\nIn this post, we shall demonstrate how to leverage the powerful Spring Data JPA APIs to interact with the database, in-memory H2 database for this lesson. Spring Data JPA offers a set of very powerful and highly-abstracted interfaces which are used to interact with any underlying database.<\/li>\n<li><a title=\"Permalink to Spring Data JPA Tutorial\" href=\"https:\/\/www.javacodegeeks.com\/2018\/05\/spring-data-jpa-tutorial.html\" rel=\"bookmark\">Spring Data JPA Tutorial<\/a><br \/>\nManaging data between java classes or objects and the relational database is a very cumbersome and tricky task. The DAO layer usually contains a lot of boilerplate code that should be simplified in order to reduce the number of lines of code and make the code reusable. In this tutorial, we will discuss spring data\u2019s implementation of JPA.<\/li>\n<li><a title=\"Permalink to Spring Data JPA with central exception handling and VO validations \u2013 framework\" href=\"https:\/\/www.javacodegeeks.com\/2018\/08\/spring-data-jpa-central-exception-handling-vo-validations-framework.html\" rel=\"bookmark\">Spring Data JPA with central exception handling and VO validations \u2013 framework<\/a><br \/>\nIn this article let\u2019s see how to write a Spring based RESTful API\u2019s using a full stack spring technology; Spring Boot, Spring Validations and Spring data JPA with an example.<\/li>\n<li><a href=\"https:\/\/examples.javacodegeeks.com\/enterprise-java\/hibernate\/hibernate-jpa-dao-example\/\">Hibernate JPA DAO Example<\/a><br \/>\nThis is an example of how to create Data Access Objects (DAOs), making use of the Hibernate implementation for the Java Persistence API (JPA) specification.<\/li>\n<\/ul>\n<p>[undereg]<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In this detailed Resource page, we feature an abundance of JPA Tutorials! The Java Persistence API (JPA) is a Java application programming interface specification that describes the management of relational data in applications using Java Platform, Standard Edition and Java Platform, Enterprise Edition. Persistence in this context covers three areas: the API itself, defined in &hellip;<\/p>\n","protected":false},"author":34987,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-82511","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JPA Tutorials - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.javacodegeeks.com\/jpa-tutorials\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JPA Tutorials - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/jpa-tutorials\" \/>\n<meta property=\"og:site_name\" content=\"Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-06T14:26:28+00:00\" \/>\n<meta property=\"og:image\" content=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"10 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials\",\"name\":\"JPA Tutorials - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials#primaryimage\"},\"thumbnailUrl\":\"http:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"datePublished\":\"2018-10-10T17:33:20+00:00\",\"dateModified\":\"2023-03-06T14:26:28+00:00\",\"description\":\"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials#primaryimage\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"width\":150,\"height\":150,\"caption\":\"java-interview-questions-answers\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/jpa-tutorials#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"JPA Tutorials\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Developers Resource Center\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.javacodegeeks.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/javacodegeeks\",\"https:\\\/\\\/x.com\\\/javacodegeeks\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JPA Tutorials - Java Code Geeks","description":"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.javacodegeeks.com\/jpa-tutorials","og_locale":"en_US","og_type":"article","og_title":"JPA Tutorials - Java Code Geeks","og_description":"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!","og_url":"https:\/\/www.javacodegeeks.com\/jpa-tutorials","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_modified_time":"2023-03-06T14:26:28+00:00","og_image":[{"url":"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_site":"@javacodegeeks","twitter_misc":{"Est. reading time":"10 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials","url":"https:\/\/www.javacodegeeks.com\/jpa-tutorials","name":"JPA Tutorials - Java Code Geeks","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials#primaryimage"},"thumbnailUrl":"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","datePublished":"2018-10-10T17:33:20+00:00","dateModified":"2023-03-06T14:26:28+00:00","description":"Interested to learn more about JPA? Then check out our detailed JPA Tutorials! You can also download our FREE JPA Tutorial!","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/jpa-tutorials"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials#primaryimage","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","width":150,"height":150,"caption":"java-interview-questions-answers"},{"@type":"BreadcrumbList","@id":"https:\/\/www.javacodegeeks.com\/jpa-tutorials#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"JPA Tutorials"}]},{"@type":"WebSite","@id":"https:\/\/www.javacodegeeks.com\/#website","url":"https:\/\/www.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Developers Resource Center","publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/www.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages\/82511","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/34987"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=82511"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/pages\/82511\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=82511"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}