{"id":2976,"date":"2017-03-31T14:44:10","date_gmt":"2017-03-31T09:14:10","guid":{"rendered":"https:\/\/www.innovationm.com\/blog\/?p=2976"},"modified":"2023-01-20T18:55:53","modified_gmt":"2023-01-20T13:25:53","slug":"apache-derby","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/apache-derby\/","title":{"rendered":"Apache Derby"},"content":{"rendered":"<p>&nbsp;<\/p>\n<p><strong>\u00a01. What is Apache Derby?<\/strong><\/p>\n<p>Apache Derby\u00a0is an open source, lightweight, fully transactional, secure, standards-based database server purely written in Java.\u00a0Java DB\u00a0is just an Oracle\u2019s distribution of Derby in their JDK and fully supports SQL, JDBC API, and Java EE technology. Apache Derby and Java DB are essentially the same. Apache Derby is the reference implementation for JDBC 4.0 and compatible to ANSI-SQL.<\/p>\n<p><strong>\u00a02. When it can be useful?<\/strong><strong>\u00a0<\/strong><\/p>\n<ul>\n<li>We mostly use it in an embedded device scenario<\/li>\n<li>When resources are really tiny<\/li>\n<li>When resources are sensible.<\/li>\n<\/ul>\n<p><strong>\u00a03. Installation of Derby<\/strong><\/p>\n<p>Download the latest Derby version from the Apache website\u00a0<a href=\"http:\/\/db.apache.org\/derby\/\">http:\/\/db.apache.org\/derby\/<\/a>. Choose the bin distribution and extract this zip to a directory of your choice.<\/p>\n<p>Also make the Derby tools available in your path:<\/p>\n<ul>\n<li>Set the environment variable DERBY_HOME to the Derby installation directory<\/li>\n<li>Add DERBY_HOME\/bin to the &#8220;path&#8221; environment variable<\/li>\n<\/ul>\n<p><strong>4. Mode of Derby database<\/strong><\/p>\n<ul>\n<li>Server Mode<\/li>\n<li>Embedded Mode<\/li>\n<\/ul>\n<p><strong>4.1. Server Mode<\/strong><\/p>\n<p>An application can also access a Derby database using the more familiar client\/server mode. This is achieved\u00a0<em>via<\/em>\u00a0a framework that embeds Derby and handles database requests from applications, including applications running in different JVMs on the same machine or on remote machines.<\/p>\n<p><strong>4.1.1. How to start Derby database in server mode?<\/strong><\/p>\n<p>Use the following command in the command line to start the Derby network server (located in the Derby installation directory\/bin).<\/p>\n<pre class=\"lang:sh decode:true\">startNetworkServer<\/pre>\n<p>This will start the network server which can serve an unlimited number of databases. By default the server will be listening on port 1527 but this can be changed via the\u00a0-p\u00a0option.<\/p>\n<pre class=\"lang:default decode:true\">startNetworkServer -p 3301<\/pre>\n<p>By default Derby will only accept connections from the localhost. To make the Derby server accept connections also from other hosts use the following start command. Replace &#8220;sampleserver.sampledomain.com&#8221; with the name or the IP of the server. The server will then accept connections only from other servers as the localhost.<\/p>\n<pre class=\"lang:default decode:true \">startNetworkServer -h sampleserver.sampledomain.com<\/pre>\n<p>If connections should be allowed from localhost and any other server use the following.<\/p>\n<pre class=\"lang:sh decode:true \">startNetworkServer -h 0.0.0.0<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>\u00a0<\/strong><strong>4.1.2.<\/strong><strong> Loading Derby JDBC driver<\/strong><\/p>\n<p>To connect to the network server via Java code you need to have the derbyclient.jar in your class-path. \u00a0We use the following network client driver to connect with DB<\/p>\n<p>If you are using Java 5.0 or earlier, you have to load the driver explicitly like this:<\/p>\n<pre class=\"lang:java decode:true\"> Class.forName(\"org.apache.derby.jdbc.ClientDriver\");<\/pre>\n<p>Or<\/p>\n<pre class=\"lang:java decode:true\"> DriverManager.registerDriver(new org.apache.derby.jdbc.ClientDriver());<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>4.1.3. Making Derby JDBC connection examples<\/strong><\/p>\n<p>With JDBC, there are three different ways to establishing a connection to the database, corresponding to three version of the method\u00a0getConnection()\u00a0of the\u00a0DriverManager\u00a0class:<\/p>\n<ul>\n<li>Using only a database URL:<\/li>\n<\/ul>\n<pre class=\"lang:java decode:true\">String dbURL = \"jdbc:derby:\/\/localhost:1527\/dbname;create=true\";\r\n\r\nConnection conn = DriverManager.getConnection(dbURL);<\/pre>\n<p><span style=\"font-size: 1rem;\">If you want to connect to an existing database you can use the following string.<\/span><\/p>\n<pre class=\"lang:java decode:true\">jdbc:derby:\/\/localhost:1527\/c:\\temp\\ dbname<\/pre>\n<ul>\n<li>Using a database URL with user and password:<\/li>\n<\/ul>\n<pre class=\"lang:java decode:true\">String dbURL = \"jdbc:derby:\/\/localhost:1527\/dbname;create=true\";\r\nString user = \"tom\";\r\nString password = \"secret\";\r\nConnection conn = DriverManager.getConnection(dbURL, user, password);\r\n<\/pre>\n<ul>\n<li>Using a database URL with a\u00a0Propertiesobject:<\/li>\n<\/ul>\n<pre class=\"lang:java decode:true \">String dbURL = \"jdbc:derby:\/\/localhost\/dbname\";\r\nProperties properties = new Properties();\r\nproperties.put(\"create\", \"true\");\r\nproperties.put(\"user\", \"tom\");\r\nproperties.put(\"password\", \"secret\");\r\nConnection conn = DriverManager.getConnection(dbURL, properties);\r\n<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>4.2. <strong>Embedded Mode<\/strong><\/strong><\/p>\n<p>When an application accesses a Derby database using the Embedded Derby JDBC driver, the Derby engine does not run in a separate process, database is accessed from one application only and<em> there are no separate database processes to start up and shut down<\/em>. Instead, the Derby database engine runs inside the same Java Virtual Machine (JVM) as the application.<\/p>\n<p><strong>4.2.1. Loading Derby JDBC driver<\/strong><\/p>\n<p>To connect to the database via Java code you need to have the derby.jar for embedded driver in your class-path. \u00a0We use the following embedded driver to connect with DB<\/p>\n<p>If you are using Java 5.0 or earlier, you have to load the driver explicitly like this:<\/p>\n<pre class=\"lang:java decode:true \">\u00a0 Class.forName(\"org.apache.derby.jdbc.EmbeddedDriver\");<\/pre>\n<p>Or<\/p>\n<pre class=\"lang:java decode:true\"> DriverManager.registerDriver(new org.apache.derby.jdbc.EmbeddedDriver());<\/pre>\n<p>&nbsp;<\/p>\n<p><strong>4.2.2 Making Derby JDBC connection examples<\/strong><\/p>\n<p>With JDBC, there are three different ways to establishing a connection to the database, corresponding to three version of the method\u00a0getConnection()\u00a0of the\u00a0DriverManager\u00a0class.<\/p>\n<p>If you want to connect to the Derby database in\u00a0embedded mode\u00a0you can use the following command. In this example the database is located at c:\\temp\\db\\FAQ\\db.<\/p>\n<ul>\n<li>Using only a database URL:<\/li>\n<\/ul>\n<pre class=\"lang:java decode:true\">String dbURL = \" jdbc:derby:c:\\temp\\db\\FAQ\\db;create=true\";\r\nConnection conn = DriverManager.getConnection(dbURL);\r\n<\/pre>\n<p>If you want to connect to an existing database you can use the following string.<\/p>\n<pre class=\"lang:java decode:true\">jdbc:derby:c:\\temp\\db\\FAQ\\db<\/pre>\n<ul>\n<li>Using a database URL with user and password:<\/li>\n<\/ul>\n<pre class=\"lang:java decode:true \">String dbURL = \" jdbc:derby:c:\\temp\\db\\FAQ\\db;create=true\";\r\nString user = \"tom\";\r\nString password = \"secret\";\r\nConnection conn = DriverManager.getConnection(dbURL, user, password);\r\n<\/pre>\n<ul>\n<li>Using a database URL with a\u00a0Propertiesobject:<\/li>\n<\/ul>\n<pre class=\"lang:default decode:true \">String dbURL = \"jdbc:derby:c:\\temp\\db\\FAQ\\db \";\r\nProperties properties = new Properties();\r\nproperties.put(\"create\", \"true\");\r\nproperties.put(\"user\", \"tom\");\r\nproperties.put(\"password\", \"secret\");\r\nConnection conn = DriverManager.getConnection(dbURL, properties);\r\n<\/pre>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>&nbsp; \u00a01. What is Apache Derby? Apache Derby\u00a0is an open source, lightweight, fully transactional, secure, standards-based database server purely written in Java.\u00a0Java DB\u00a0is just an Oracle\u2019s distribution of Derby in their JDK and fully supports SQL, JDBC API, and Java EE technology. Apache Derby and Java DB are essentially the same. Apache Derby is the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":2988,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[71],"tags":[],"class_list":["post-2976","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-mobile"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Apache Derby | InnovationM Blog<\/title>\n<meta name=\"description\" content=\"Know all about Apache Derby.\" \/>\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.innovationm.com\/blog\/apache-derby\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Apache Derby | InnovationM Blog\" \/>\n<meta property=\"og:description\" content=\"Know all about Apache Derby.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/apache-derby\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2017-03-31T09:14:10+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-01-20T13:25:53+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png\" \/>\n\t<meta property=\"og:image:width\" content=\"624\" \/>\n\t<meta property=\"og:image:height\" content=\"347\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"InnovationM Admin\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"InnovationM Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"Apache Derby\",\"datePublished\":\"2017-03-31T09:14:10+00:00\",\"dateModified\":\"2023-01-20T13:25:53+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/\"},\"wordCount\":664,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/Apache-Derby.png\",\"articleSection\":[\"Mobile\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/\",\"name\":\"Apache Derby | InnovationM Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/Apache-Derby.png\",\"datePublished\":\"2017-03-31T09:14:10+00:00\",\"dateModified\":\"2023-01-20T13:25:53+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"description\":\"Know all about Apache Derby.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/Apache-Derby.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2017\\\/03\\\/Apache-Derby.png\",\"width\":624,\"height\":347},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/apache-derby\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Apache Derby\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\",\"name\":\"InnovationM - Blog\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\",\"name\":\"InnovationM Admin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g\",\"caption\":\"InnovationM Admin\"},\"sameAs\":[\"http:\\\/\\\/www.innovationm.com\\\/\"],\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/author\\\/innovationmadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Apache Derby | InnovationM Blog","description":"Know all about Apache Derby.","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.innovationm.com\/blog\/apache-derby\/","og_locale":"en_US","og_type":"article","og_title":"Apache Derby | InnovationM Blog","og_description":"Know all about Apache Derby.","og_url":"https:\/\/www.innovationm.com\/blog\/apache-derby\/","og_site_name":"InnovationM - Blog","article_published_time":"2017-03-31T09:14:10+00:00","article_modified_time":"2023-01-20T13:25:53+00:00","og_image":[{"width":624,"height":347,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"Apache Derby","datePublished":"2017-03-31T09:14:10+00:00","dateModified":"2023-01-20T13:25:53+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/"},"wordCount":664,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png","articleSection":["Mobile"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/apache-derby\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/","url":"https:\/\/www.innovationm.com\/blog\/apache-derby\/","name":"Apache Derby | InnovationM Blog","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png","datePublished":"2017-03-31T09:14:10+00:00","dateModified":"2023-01-20T13:25:53+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"description":"Know all about Apache Derby.","breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/apache-derby\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2017\/03\/Apache-Derby.png","width":624,"height":347},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/apache-derby\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Apache Derby"}]},{"@type":"WebSite","@id":"https:\/\/www.innovationm.com\/blog\/#website","url":"https:\/\/www.innovationm.com\/blog\/","name":"InnovationM - Blog","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.innovationm.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed","name":"InnovationM Admin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5c99d9eece9dfbc82297cf34ddd58e9fe05bb52fe66c8f6bf6c0a45bfb6d7629?s=96&r=g","caption":"InnovationM Admin"},"sameAs":["http:\/\/www.innovationm.com\/"],"url":"https:\/\/www.innovationm.com\/blog\/author\/innovationmadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/2976","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/comments?post=2976"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/2976\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/2988"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=2976"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=2976"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=2976"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}