{"id":11106,"date":"2013-04-11T19:00:23","date_gmt":"2013-04-11T16:00:23","guid":{"rendered":"http:\/\/www.javacodegeeks.com\/?p=11106"},"modified":"2013-04-11T08:43:33","modified_gmt":"2013-04-11T05:43:33","slug":"jpa-determining-the-owning-side-of-a-relationship","status":"publish","type":"post","link":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html","title":{"rendered":"JPA: Determining the Owning Side of a Relationship"},"content":{"rendered":"<p>When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the data model (think database) through the use of foreign keys and within our object model (think Java) using annotations to indicate associations. When defining relationships or associations within the object model a common task is identifying the owning side of the relationship.\u00a0 Identifying the owning entity within a relationship is important because the owning side is most often, if not always, where the @JoinColumn annotation must be specified. To illustrate the concept of the owning side of an entity we will use a data model to support this discussion.<br \/>\n&nbsp;<br \/>\n&nbsp;<\/p>\n<p style=\"text-align: center;\"><img decoding=\"async\" class=\"aligncenter\" title=\"Data Model\" alt=\"Data Model\" src=\"http:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2013\/04\/data_model.png\" width=\"370\" height=\"167\" \/><\/p>\n<p>Let&#8217;s analyze this simple model, which depicts a relationship between two tables POST and SERIES.\u00a0 In this relationship, the POST table stores a blog post, which can be part of a series of posts represented by the SERIES table. In the data model, the SERIES_ID foreign key on the POST table associates the POST with its respective SERIES.\u00a0 This foreign key indicates which entity owns the relationship. Let&#8217;s add these entities in the object model and establish a simple unidirectional relationship between them.\u00a0 First, the series entity:<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<pre class=\" brush:java\">@Entity\r\n@Table(name=\"SERIES\")\r\npublic class Series {\r\n\r\n\t@Id\r\n\t@GeneratedValue(strategy=GenerationType.AUTO)\r\n\t@Column(name=\"SERIES_ID\")\r\n\tprivate Integer seriesId;\r\n\r\n\t@Column(name=\"TITLE\")\r\n\tprivate String title;\r\n\r\n\t\/\/Accessors...\r\n}<\/pre>\n<p>And the Post entity:<\/p>\n<pre class=\" brush:java\">@Entity\r\n@Table(name=\"POST\")\r\npublic class Post {\r\n\r\n\t@Id\r\n\t@GeneratedValue(strategy=GenerationType.AUTO)\r\n\t@Column(name=\"POST_ID\")\r\n\tInteger postId;\r\n\r\n\t@Column(name=\"TITLE\")\r\n\tString title;\r\n\r\n\t@Column(name=\"POST_DATE\")\r\n\tDate postDate;\r\n\r\n\t@ManyToOne\r\n\t@JoinColumn(name=\"SERIES_ID\")\r\n\tprivate Series series;\r\n\r\n\t\/\/Accessors...\r\n}<\/pre>\n<p>In the Post entity the @JoinColumn annotation is specified above the field Series to denote the foreign key to be used to identify a Post&#8217;s respective Series.\u00a0 The @JoinColumn annotation was placed on the Post entity because it is the owning entity in the relationship. \u00a0The owning side of the entity was determined by referencing both entities in the data model and identifying the entity containing the foreign key. If the relationship between the Post and Series entities was required to be bidirectional, meaning the Post entities should be accessible from the Series, the inverse side of the relationship (Series) must be annotated with @OneToMany, with a mappedBy element defined.\u00a0 The mappedBy element should point to the field on the owning side of the relationship (Post) that specifies the @JoinColumn used to associate the entities.<\/p>\n<p>The mapping for establishing a bidirectional relationship is highlighted in the following refactoring of the Series entity:<\/p>\n<pre class=\" brush:java\">@Entity\r\n@Table(name=\"SERIES\")\r\npublic class Series {\r\n\r\n\t@Id\r\n\t@GeneratedValue(strategy=GenerationType.AUTO)\r\n\t@Column(name=\"SERIES_ID\")\r\n\tprivate Integer seriesId;\r\n\r\n\t@Column(name=\"TITLE\")\r\n\tprivate String title;\r\n\r\n\t@OneToMany(mappedBy=\"series\")\r\n\tprivate List posts = new ArrayList();\r\n\r\n\t\/\/Accessors...\r\n}<\/pre>\n<p>In summary, when determining the owning entity within a relationship defined within a JPA persistence unit, it is important to consult the data model to find which entities respective table in the data model contains the foreign key.<\/p>\n<p>&nbsp;<\/p>\n<div style=\"border: 1px solid #D8D8D8; background: #FAFAFA; width: 100%; padding-left: 5px;\"><b><i>Reference: <\/i><\/b><a href=\"http:\/\/tothought.cloudfoundry.com\/post\/5\">JPA: Determining the Owning Side of a Relationship<\/a> from our <a href=\"http:\/\/www.javacodegeeks.com\/jcg\">JCG partner<\/a> Kevin Bowersox at the <a href=\"http:\/\/tothought.cloudfoundry.com\/\">ToThought<\/a> blog.<\/div>\n","protected":false},"excerpt":{"rendered":"<p>When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the data model (think database) through the use of foreign keys and within our object model (think Java) using annotations to indicate associations. When defining relationships or associations within the object model a &hellip;<\/p>\n","protected":false},"author":406,"featured_media":112,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8],"tags":[33],"class_list":["post-11106","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-enterprise-java","tag-jpa"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>JPA: Determining the Owning Side of a Relationship<\/title>\n<meta name=\"description\" content=\"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the\" \/>\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\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"JPA: Determining the Owning Side of a Relationship\" \/>\n<meta property=\"og:description\" content=\"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html\" \/>\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:published_time\" content=\"2013-04-11T16:00:23+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Kevin Bowersox\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kevin Bowersox\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html\"},\"author\":{\"name\":\"Kevin Bowersox\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/3725fdb1bf0ac23602a70e395db4b905\"},\"headline\":\"JPA: Determining the Owning Side of a Relationship\",\"datePublished\":\"2013-04-11T16:00:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html\"},\"wordCount\":427,\"commentCount\":3,\"publisher\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"keywords\":[\"JPA\"],\"articleSection\":[\"Enterprise Java\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html\",\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html\",\"name\":\"JPA: Determining the Owning Side of a Relationship\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.javacodegeeks.com\\\/wp-content\\\/uploads\\\/2012\\\/10\\\/enterprise-java-logo.jpg\",\"datePublished\":\"2013-04-11T16:00:23+00:00\",\"description\":\"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#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\\\/2013\\\/04\\\/jpa-determining-the-owning-side-of-a-relationship.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\\\/\\\/www.javacodegeeks.com\\\/category\\\/java\\\/enterprise-java\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"JPA: Determining the Owning Side of a Relationship\"}]},{\"@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\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.javacodegeeks.com\\\/#\\\/schema\\\/person\\\/3725fdb1bf0ac23602a70e395db4b905\",\"name\":\"Kevin Bowersox\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g\",\"caption\":\"Kevin Bowersox\"},\"sameAs\":[\"http:\\\/\\\/blog-tothought.rhcloud.com\\\/blog\\\/page\\\/0\"],\"url\":\"https:\\\/\\\/www.javacodegeeks.com\\\/author\\\/kevin-bowersox\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"JPA: Determining the Owning Side of a Relationship","description":"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the","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\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html","og_locale":"en_US","og_type":"article","og_title":"JPA: Determining the Owning Side of a Relationship","og_description":"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the","og_url":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html","og_site_name":"Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2013-04-11T16:00:23+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","type":"image\/jpeg"}],"author":"Kevin Bowersox","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Kevin Bowersox","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#article","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html"},"author":{"name":"Kevin Bowersox","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/3725fdb1bf0ac23602a70e395db4b905"},"headline":"JPA: Determining the Owning Side of a Relationship","datePublished":"2013-04-11T16:00:23+00:00","mainEntityOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html"},"wordCount":427,"commentCount":3,"publisher":{"@id":"https:\/\/www.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","keywords":["JPA"],"articleSection":["Enterprise Java"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html","url":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html","name":"JPA: Determining the Owning Side of a Relationship","isPartOf":{"@id":"https:\/\/www.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage"},"image":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#primaryimage"},"thumbnailUrl":"https:\/\/www.javacodegeeks.com\/wp-content\/uploads\/2012\/10\/enterprise-java-logo.jpg","datePublished":"2013-04-11T16:00:23+00:00","description":"When using the Java Persistence API (JPA) it is often necessary to create relationships between two entities.\u00a0 These relationships are defined within the","breadcrumb":{"@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.javacodegeeks.com\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#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\/2013\/04\/jpa-determining-the-owning-side-of-a-relationship.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java","item":"https:\/\/www.javacodegeeks.com\/category\/java"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/www.javacodegeeks.com\/category\/java\/enterprise-java"},{"@type":"ListItem","position":4,"name":"JPA: Determining the Owning Side of a Relationship"}]},{"@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"]},{"@type":"Person","@id":"https:\/\/www.javacodegeeks.com\/#\/schema\/person\/3725fdb1bf0ac23602a70e395db4b905","name":"Kevin Bowersox","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/1d7751703ce31ae86c238fa7ed31701baaa231b2748c23af644b2b00b5d780c1?s=96&d=mm&r=g","caption":"Kevin Bowersox"},"sameAs":["http:\/\/blog-tothought.rhcloud.com\/blog\/page\/0"],"url":"https:\/\/www.javacodegeeks.com\/author\/kevin-bowersox"}]}},"_links":{"self":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/11106","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/users\/406"}],"replies":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=11106"}],"version-history":[{"count":0,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/11106\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media\/112"}],"wp:attachment":[{"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=11106"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=11106"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=11106"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}