{"id":152,"date":"2018-04-01T09:07:34","date_gmt":"2018-04-01T09:07:34","guid":{"rendered":"https:\/\/www.digital-web-services.com\/?p=152"},"modified":"2020-12-12T05:07:58","modified_gmt":"2020-12-12T05:07:58","slug":"understanding-spring-inversion-of-control-iop-or-dependency-injection","status":"publish","type":"post","link":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html","title":{"rendered":"Understanding Spring Inversion of Control (IOP) Or Dependency Injection"},"content":{"rendered":"<p style=\"text-align: justify;\"><strong>Spring framework:<\/strong> is the most widely used free and open-source <strong>java application framework<\/strong>. It was created by Rod Johnson in the year 2003 and is very popular among the developers around the globe.<\/p>\n<p style=\"text-align: justify;\">The main aim of developing this framework was to enhance the developer\u2019s productivity and also make them understand and use some of the best industry coding practices.<\/p>\n<p style=\"text-align: justify;\">The Spring framework was created by using a design pattern Inversion of control <a href=\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\"><strong>Spring (IOP)<\/strong><\/a> or\u00a0 Dependency Injection,<\/p>\n<p><a href=\"https:\/\/click.linksynergy.com\/fs-bin\/click?id=vtRFU0Czulo&amp;offerid=507388.1629&amp;subid=0&amp;type=4\" target=\"_blank\" rel=\"noopener nofollow noreferrer\"><img decoding=\"async\" class=\"aligncenter\" src=\"https:\/\/ad.linksynergy.com\/fs-bin\/show?id=vtRFU0Czulo&amp;bids=507388.1483&amp;subid=0&amp;type=4&amp;gridnum=16\" alt=\"Career Category (English)728x90\" border=\"0\" \/><\/a><\/p>\n<p style=\"text-align: justify;\"><strong><span style=\"color: #99cc00;\">Let us understand this with the help of an example.<\/span><\/strong><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-154\" src=\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/spring-iop.jpg\" alt=\"spring iop\" width=\"177\" height=\"142\" \/><\/p>\n<p style=\"text-align: justify;\">Here we are creating object of Class B inside Class A which means class A is completely dependent upon class B. In future if there will be any modification in Class B (number of Parameters) we may be forced to do modification in Class A as well.<\/p>\n<p style=\"text-align: justify;\">Again, If we want to replace <strong>Class B<\/strong> with some other Class <strong>(say Class C)<\/strong> which provides more better functionality then in that case also we will have to modify <strong>Class A<\/strong>.<\/p>\n<p style=\"text-align: justify;\">This is a very small example. In big projects where there are hundreds of java classes doing such changes can be a big pain. These problems are just for one reason that Class A is completely dependent on class B<\/p>\n<p style=\"text-align: justify;\">So there needs to be a mechanism by which we can remove this dependency or reduce this to overcome all such problems.<\/p>\n<p style=\"text-align: justify;\">Here comes Spring Inversion of Control(IOP) or Dependency Injection Container in picture.<\/p>\n<p style=\"text-align: justify;\"><strong>Inversion of control (IOP) or Dependency Injection <\/strong>\u2013 It says that you should not be creating or instantiating an object inside any other java class. Instead , rely on Spring\u2019s IOP module to crate the object for you.<\/p>\n<p><a href=\"https:\/\/click.linksynergy.com\/fs-bin\/click?id=vtRFU0Czulo&amp;offerid=507388.1629&amp;subid=0&amp;type=4\" target=\"_blank\" rel=\"noopener nofollow noreferrer\"><img decoding=\"async\" src=\"https:\/\/ad.linksynergy.com\/fs-bin\/show?id=vtRFU0Czulo&amp;bids=507388.1347&amp;subid=0&amp;type=4&amp;gridnum=16\" alt=\"Development Category (English)728x90\" border=\"0\" \/><\/a><\/p>\n<h2 style=\"text-align: justify;\"><span style=\"color: #ff6600;\"><strong>Understanding The Problem If We Don\u2019t Use Dependency Injection<\/strong><\/span><\/h2>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-155 size-full\" src=\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download.png\" alt=\"Dependency Injection\" width=\"367\" height=\"137\" srcset=\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download.png 367w, https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download-300x112.png 300w\" sizes=\"(max-width: 367px) 100vw, 367px\" \/><\/p>\n<p style=\"text-align: justify;\">In this example we have a Hotel class that needs Coffee class to prepare Drink. Calling prepareDrink() method of Hotel class will prepareCoffee using the coffee object. But this can cause problems in future maintenance of the project as we are directly instantiating coffee object inside Hotel Class using a new operator and because of this the Hotel class has a direct dependency on the Coffee Class or so much tightly coupled with Coffee class that it will cause so much trouble if in future we decide to change the Coffee Class.<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/ir-in.amazon-adsystem.com\/e\/ir?t=digitalwebser-21&amp;language=en_IN&amp;l=li3&amp;o=31&amp;a=9387432297\" alt=\"\" width=\"1\" height=\"1\" border=\"0\" \/><\/p>\n<h3><span style=\"color: #99cc00;\"><strong>Problems that will be faced if we use this design<\/strong><\/span><\/h3>\n<ol style=\"text-align: justify;\">\n<li>If we will replace Coffee Class with some other class( ColdCofee) then this will force us to do modification in Hotel class as well.<\/li>\n<li>Modifying the Coffee class (parameterising its constructor) will also need to do changes in Hotel class.<\/li>\n<li>You cannot test Hotel Class without including Coffee Class.<\/li>\n<\/ol>\n<p style=\"text-align: justify;\">If Hotel class just uses the Coffee object without mentioning Coffee class in it then we can overcome all such problems.<\/p>\n<p style=\"text-align: justify;\">The framework that helps you in making this possible is the <strong>Dependency Injection Framework<\/strong>. You will not have to mention Coffee object inside Hotel class and still the Hotel class will use the Coffee object.<\/p>\n<p style=\"text-align: justify;\">It says never create an object inside another<strong> Java class<\/strong> using the new operator, instead the framework will create all the objects along with their dependencies in your application and you just need to use them. This will make the code more readable and maintainable.<\/p>\n<p><a href=\"https:\/\/click.linksynergy.com\/fs-bin\/click?id=vtRFU0Czulo&amp;offerid=507388.1629&amp;subid=0&amp;type=4\" target=\"_blank\" rel=\"noopener nofollow noreferrer\"><img decoding=\"async\" src=\"https:\/\/ad.linksynergy.com\/fs-bin\/show?id=vtRFU0Czulo&amp;bids=507388.1382&amp;subid=0&amp;type=4&amp;gridnum=0\" alt=\"Programming Category (English)640x480\" border=\"0\" \/><\/a><\/p>\n<h4 style=\"text-align: justify;\"><strong>In the next blog we will see how we can use Dependency Injection and the ways by which we can use this &gt;&gt;&gt;<\/strong><\/h4>\n","protected":false},"excerpt":{"rendered":"<p>Spring framework: is the most widely used free and open-source java application framework. It was created by Rod Johnson in the year 2003 and is very popular among the developers around the globe. The main aim of developing this framework was to enhance the developer\u2019s productivity and also make them understand and use some of [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":158,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_gspb_post_css":"","footnotes":""},"categories":[8,7],"tags":[],"offerexpiration":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Understanding Spring IOP Inversion of Control, Dependency Injection<\/title>\n<meta name=\"description\" content=\"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.\" \/>\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.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Understanding Spring IOP Inversion of Control, Dependency Injection\" \/>\n<meta property=\"og:description\" content=\"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\" \/>\n<meta property=\"og:site_name\" content=\"Digital Web Services\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/digitalwbservices\/\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/digitalwbservices\/\" \/>\n<meta property=\"article:published_time\" content=\"2018-04-01T09:07:34+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2020-12-12T05:07:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download-1.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"667\" \/>\n\t<meta property=\"og:image:height\" content=\"400\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Digital Web Services\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@digitalwebservs\" \/>\n<meta name=\"twitter:site\" content=\"@digitalwebservs\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Digital Web Services\" \/>\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.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\"},\"author\":{\"name\":\"Digital Web Services\",\"@id\":\"https:\/\/www.digital-web-services.com\/#\/schema\/person\/c0e9c781fa72cdd7c935d65b1d97291b\"},\"headline\":\"Understanding Spring Inversion of Control (IOP) Or Dependency Injection\",\"datePublished\":\"2018-04-01T09:07:34+00:00\",\"dateModified\":\"2020-12-12T05:07:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\"},\"wordCount\":575,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.digital-web-services.com\/#organization\"},\"articleSection\":[\"JAVA Tutorial\",\"Programming\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\",\"url\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\",\"name\":\"Understanding Spring IOP Inversion of Control, Dependency Injection\",\"isPartOf\":{\"@id\":\"https:\/\/www.digital-web-services.com\/#website\"},\"datePublished\":\"2018-04-01T09:07:34+00:00\",\"dateModified\":\"2020-12-12T05:07:58+00:00\",\"description\":\"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.\",\"breadcrumb\":{\"@id\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.digital-web-services.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Understanding Spring Inversion of Control (IOP) Or Dependency Injection\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.digital-web-services.com\/#website\",\"url\":\"https:\/\/www.digital-web-services.com\/\",\"name\":\"Digital Web Services\",\"description\":\"Software &amp; Web IT Solutions\",\"publisher\":{\"@id\":\"https:\/\/www.digital-web-services.com\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.digital-web-services.com\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.digital-web-services.com\/#organization\",\"name\":\"Digital Web Services\",\"alternateName\":\"DWS\",\"url\":\"https:\/\/www.digital-web-services.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.digital-web-services.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/DWS-Brand-Logo.jpg\",\"contentUrl\":\"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/DWS-Brand-Logo.jpg\",\"width\":500,\"height\":500,\"caption\":\"Digital Web Services\"},\"image\":{\"@id\":\"https:\/\/www.digital-web-services.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/digitalwbservices\/\",\"https:\/\/twitter.com\/digitalwebservs\",\"https:\/\/www.instagram.com\/digitalwebservices\/\",\"https:\/\/www.linkedin.com\/in\/digitalwebservices\/\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.digital-web-services.com\/#\/schema\/person\/c0e9c781fa72cdd7c935d65b1d97291b\",\"name\":\"Digital Web Services\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.digital-web-services.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/5ebf80e59bcd3de8f883ad135bd039c9?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/5ebf80e59bcd3de8f883ad135bd039c9?s=96&d=mm&r=g\",\"caption\":\"Digital Web Services\"},\"description\":\"Digital Web Services (DWS) is a leading IT company specializing in Software Development, Web Application Development, Website Designing, and Digital Marketing. Here are providing all kinds of services and solutions for the digital transformation of any business and website.\",\"sameAs\":[\"https:\/\/www.facebook.com\/digitalwbservices\/\",\"https:\/\/www.instagram.com\/digitalwebservices\/\",\"https:\/\/www.linkedin.com\/in\/digitalwebservices\/\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Understanding Spring IOP Inversion of Control, Dependency Injection","description":"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.","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.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html","og_locale":"en_US","og_type":"article","og_title":"Understanding Spring IOP Inversion of Control, Dependency Injection","og_description":"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.","og_url":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html","og_site_name":"Digital Web Services","article_publisher":"https:\/\/www.facebook.com\/digitalwbservices\/","article_author":"https:\/\/www.facebook.com\/digitalwbservices\/","article_published_time":"2018-04-01T09:07:34+00:00","article_modified_time":"2020-12-12T05:07:58+00:00","og_image":[{"width":667,"height":400,"url":"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download-1.jpg","type":"image\/jpeg"}],"author":"Digital Web Services","twitter_card":"summary_large_image","twitter_creator":"@digitalwebservs","twitter_site":"@digitalwebservs","twitter_misc":{"Written by":"Digital Web Services","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#article","isPartOf":{"@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html"},"author":{"name":"Digital Web Services","@id":"https:\/\/www.digital-web-services.com\/#\/schema\/person\/c0e9c781fa72cdd7c935d65b1d97291b"},"headline":"Understanding Spring Inversion of Control (IOP) Or Dependency Injection","datePublished":"2018-04-01T09:07:34+00:00","dateModified":"2020-12-12T05:07:58+00:00","mainEntityOfPage":{"@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html"},"wordCount":575,"commentCount":0,"publisher":{"@id":"https:\/\/www.digital-web-services.com\/#organization"},"articleSection":["JAVA Tutorial","Programming"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html","url":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html","name":"Understanding Spring IOP Inversion of Control, Dependency Injection","isPartOf":{"@id":"https:\/\/www.digital-web-services.com\/#website"},"datePublished":"2018-04-01T09:07:34+00:00","dateModified":"2020-12-12T05:07:58+00:00","description":"The Spring (IOP) framework was created by using a design pattern Inversion of control or Dependency Injection Let us understand with the help of an example.","breadcrumb":{"@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.digital-web-services.com\/understanding-spring-inversion-of-control-iop-or-dependency-injection.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.digital-web-services.com\/"},{"@type":"ListItem","position":2,"name":"Understanding Spring Inversion of Control (IOP) Or Dependency Injection"}]},{"@type":"WebSite","@id":"https:\/\/www.digital-web-services.com\/#website","url":"https:\/\/www.digital-web-services.com\/","name":"Digital Web Services","description":"Software &amp; Web IT Solutions","publisher":{"@id":"https:\/\/www.digital-web-services.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.digital-web-services.com\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.digital-web-services.com\/#organization","name":"Digital Web Services","alternateName":"DWS","url":"https:\/\/www.digital-web-services.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.digital-web-services.com\/#\/schema\/logo\/image\/","url":"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/DWS-Brand-Logo.jpg","contentUrl":"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/DWS-Brand-Logo.jpg","width":500,"height":500,"caption":"Digital Web Services"},"image":{"@id":"https:\/\/www.digital-web-services.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/digitalwbservices\/","https:\/\/twitter.com\/digitalwebservs","https:\/\/www.instagram.com\/digitalwebservices\/","https:\/\/www.linkedin.com\/in\/digitalwebservices\/"]},{"@type":"Person","@id":"https:\/\/www.digital-web-services.com\/#\/schema\/person\/c0e9c781fa72cdd7c935d65b1d97291b","name":"Digital Web Services","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.digital-web-services.com\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/5ebf80e59bcd3de8f883ad135bd039c9?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/5ebf80e59bcd3de8f883ad135bd039c9?s=96&d=mm&r=g","caption":"Digital Web Services"},"description":"Digital Web Services (DWS) is a leading IT company specializing in Software Development, Web Application Development, Website Designing, and Digital Marketing. Here are providing all kinds of services and solutions for the digital transformation of any business and website.","sameAs":["https:\/\/www.facebook.com\/digitalwbservices\/","https:\/\/www.instagram.com\/digitalwebservices\/","https:\/\/www.linkedin.com\/in\/digitalwebservices\/"]}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"https:\/\/www.digital-web-services.com\/wp-content\/uploads\/download-1.jpg","_links":{"self":[{"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/posts\/152"}],"collection":[{"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/comments?post=152"}],"version-history":[{"count":5,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/posts\/152\/revisions"}],"predecessor-version":[{"id":5558,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/posts\/152\/revisions\/5558"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/media\/158"}],"wp:attachment":[{"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/media?parent=152"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/categories?post=152"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/tags?post=152"},{"taxonomy":"offerexpiration","embeddable":true,"href":"https:\/\/www.digital-web-services.com\/wp-json\/wp\/v2\/offerexpiration?post=152"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}