{"id":8179,"date":"2024-06-13T18:48:14","date_gmt":"2024-06-13T13:18:14","guid":{"rendered":"https:\/\/innovationm.co\/?p=8179"},"modified":"2024-06-13T18:48:14","modified_gmt":"2024-06-13T13:18:14","slug":"spring-boot-annotations","status":"publish","type":"post","link":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/","title":{"rendered":"Spring Boot Annotations"},"content":{"rendered":"<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Spring Boot is known for its simplicity and ease of use, largely due to its extensive use of annotations. These annotations help configure and manage the application in a declarative way, reducing boilerplate code and enhancing readability.\u00a0<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Here, we&#8217;ll explore some of the most commonly used annotations in Spring Boot.<\/span><\/p>\n<h4 style=\"text-align: justify;\"><b>1. @SpringBootApplication<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">This is a convenience annotation that combines three annotations:<\/span><\/p>\n<ul style=\"text-align: justify;\">\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>@Configuration<\/strong><span style=\"font-weight: 400;\">: Indicates that the class can be used by the Spring IoC container as a source of bean definitions.<\/span><\/li>\n<\/ul>\n<ul style=\"text-align: justify;\">\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>@EnableAutoConfiguration<\/strong><span style=\"font-weight: 400;\">: Enables Spring Boot\u2019s auto-configuration mechanism.<\/span><\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\"><strong>@ComponentScan<\/strong><span style=\"font-weight: 400;\">: Tells Spring to scan the current package and its sub-packages for components, configurations, and services.<\/span><\/li>\n<\/ul>\n<pre>@SpringBootApplication\r\npublic class MySpringBootApplication {\r\npublic static void main(String[] args) {\r\nSpringApplication.run(MySpringBootApplication.class, args);\r\n}\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>2. @RestController<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Combines <\/span><span style=\"font-weight: 400;\">@Controller<\/span><span style=\"font-weight: 400;\"> and <\/span><span style=\"font-weight: 400;\">@ResponseBody<\/span><span style=\"font-weight: 400;\">. It marks the class as a web controller, capable of handling HTTP requests and returning the response body directly.<\/span><\/p>\n<pre>@RestController\r\npublic class MyController {\r\n@GetMapping(\"\/hello\")\r\npublic String sayHello() { return \"Hello, World!\";\r\n}\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>3. @RequestMapping<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Used to map web requests to specific handler methods or classes. It can be used at the class level and method level.<\/span><\/p>\n<pre>@RestController\r\n@RequestMapping(\"\/api\")\r\npublic class ApiController {\r\n@GetMapping(\"\/users\")\r\npublic List&lt;User&gt;\r\n}\r\ngetUsers() {\r\n\/\/ Implementation here\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>4. @GetMapping, @PostMapping, @PutMapping, @DeleteMapping<\/b><\/h4>\n<h4 style=\"text-align: justify;\"><span style=\"font-weight: 400;\">These annotations are shortcuts for <\/span><span style=\"font-weight: 400;\">@RequestMapping<\/span><span style=\"font-weight: 400;\"> with specific HTTP methods.<\/span><\/h4>\n<ul style=\"text-align: justify;\">\n<li aria-level=\"1\">\n<h4><b>GetMapping\u00a0 \u00a0 \u00a0 &#8211;\u00a0 <\/b><span style=\"font-weight: 400;\">retrieve the data from the database.<\/span><\/h4>\n<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">\n<h4><b>PostMapping\u00a0 \u00a0 &#8211;\u00a0 <\/b><span style=\"font-weight: 400;\">maps specific URLs to handler methods allowing you to receive and process data submitted through POST requests.<\/span><\/h4>\n<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">\n<h4><b>PutMapping\u00a0 \u00a0 \u00a0 &#8211; <\/b><span style=\"font-weight: 400;\">modify\/update a resource where the client sends data that updates the entire resource. It is used to set an entity\u2019s information completely. PUT is similar to POST in that it can create resources, but it does so when there is a defined URI. PUT overwrites the entire entity if it already exists, and creates a new resource if it doesn\u2019t exist.<\/span><\/h4>\n<\/li>\n<li style=\"font-weight: 400;\" aria-level=\"1\">\n<h4><b>DeleteMapping\u00a0 &#8211; <\/b><span style=\"font-weight: 400;\">maps a specific URLs handler method allowing you to receive and process the data submitted through DELETE requests.<\/span><\/h4>\n<\/li>\n<\/ul>\n<pre>@RestController @RequestMapping(\"\/api\")\r\npublic class ApiController {\r\n@GetMapping(\"\/users\")\r\npublic List&lt;User&gt; getUsers() {\r\n}\r\n\/\/ Implementation here\r\n@PostMapping(\"\/users\")\r\npublic User createUser (@RequestBody User user) {\r\n\/\/ Implementation here\r\n}\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>5. @Autowired<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Used for automatic dependency injection. Spring\u2019s dependency injection allows you to manage dependencies in a declarative way.<\/span><\/p>\n<pre>@Service\r\npublic class UserService {\r\n}\r\n@Autowired\r\nprivate UserRepository userRepository;\r\npublic List&lt;User&gt; getAllUsers() { return userRepository.findAll();\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>6. @Component, @Service, @Repository, @Controller<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">These annotations are used to define Spring-managed components. They make the classes eligible for Spring\u2019s component scanning to detect and register as beans.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">= @Component<\/span><span style=\"font-weight: 400;\">: Generic stereotype for any Spring-managed component.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">= @Service<\/span><span style=\"font-weight: 400;\">: Specialization of <\/span><span style=\"font-weight: 400;\">@Component<\/span><span style=\"font-weight: 400;\"> for service-layer beans.<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">= @Repository<\/span><span style=\"font-weight: 400;\">: Specialization of <\/span><span style=\"font-weight: 400;\">@Component<\/span><span style=\"font-weight: 400;\"> for data access objects (DAOs).<\/span><\/p>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">= @Controller<\/span><span style=\"font-weight: 400;\">: Specialization of <\/span><span style=\"font-weight: 400;\">@Component<\/span><span style=\"font-weight: 400;\"> for presentation-layer beans.<\/span><\/p>\n<pre>@Service\r\npublic class MyService {\r\n}\r\n\/\/ Service logic here\r\n@Repository\r\npublic class MyRepository { \/\/ Repository logic here\r\n}<\/pre>\n<h4 style=\"text-align: justify;\"><b>7. @Value<\/b><\/h4>\n<p style=\"text-align: justify;\"><span style=\"font-weight: 400;\">Used to inject values into fields from properties files.<\/span><\/p>\n<pre>@Component\r\npublic class MyComponent {\r\n}\r\n@Value(\"${my.property}\")\r\nprivate String myProperty;<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Spring Boot is known for its simplicity and ease of use, largely due to its extensive use of annotations. These annotations help configure and manage the application in a declarative way, reducing boilerplate code and enhancing readability.\u00a0 Here, we&#8217;ll explore some of the most commonly used annotations in Spring Boot. 1. @SpringBootApplication This is a [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":8180,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[990,256,971,360,972,966,441],"tags":[998,979,980,973,279],"class_list":["post-8179","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-backend","category-java-application","category-java-development","category-javascript","category-software-architecture","category-software-engineering","category-spring-boot","tag-backend","tag-java-development","tag-software-architecture","tag-software-engineering","tag-spring-boot"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.4 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Spring Boot Annotations - InnovationM - Blog<\/title>\n<meta name=\"description\" content=\"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.\" \/>\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\/spring-boot-annotations\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring Boot Annotations - InnovationM - Blog\" \/>\n<meta property=\"og:description\" content=\"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/\" \/>\n<meta property=\"og:site_name\" content=\"InnovationM - Blog\" \/>\n<meta property=\"article:published_time\" content=\"2024-06-13T13:18:14+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png\" \/>\n\t<meta property=\"og:image:width\" content=\"2240\" \/>\n\t<meta property=\"og:image:height\" content=\"1260\" \/>\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=\"3 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/\"},\"author\":{\"name\":\"InnovationM Admin\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"headline\":\"Spring Boot Annotations\",\"datePublished\":\"2024-06-13T13:18:14+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/\"},\"wordCount\":367,\"commentCount\":0,\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/Spring-Boot-Annotations.png\",\"keywords\":[\"Backend\",\"Java Development\",\"Software Architecture\",\"Software Engineering\",\"Spring Boot\"],\"articleSection\":[\"Backend\",\"Java Application\",\"Java Development\",\"JavaScript\",\"Software Architecture\",\"Software Engineering\",\"Spring Boot\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/\",\"name\":\"Spring Boot Annotations - InnovationM - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/Spring-Boot-Annotations.png\",\"datePublished\":\"2024-06-13T13:18:14+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/#\\\/schema\\\/person\\\/a831bf4602d69d1fa452e3de0c8862ed\"},\"description\":\"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/Spring-Boot-Annotations.png\",\"contentUrl\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/wp-content\\\/uploads\\\/2024\\\/06\\\/Spring-Boot-Annotations.png\",\"width\":2240,\"height\":1260,\"caption\":\"InnovationM Blog\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/spring-boot-annotations\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.innovationm.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring Boot Annotations\"}]},{\"@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":"Spring Boot Annotations - InnovationM - Blog","description":"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.","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\/spring-boot-annotations\/","og_locale":"en_US","og_type":"article","og_title":"Spring Boot Annotations - InnovationM - Blog","og_description":"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.","og_url":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/","og_site_name":"InnovationM - Blog","article_published_time":"2024-06-13T13:18:14+00:00","og_image":[{"width":2240,"height":1260,"url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png","type":"image\/png"}],"author":"InnovationM Admin","twitter_misc":{"Written by":"InnovationM Admin","Est. reading time":"3 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#article","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/"},"author":{"name":"InnovationM Admin","@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"headline":"Spring Boot Annotations","datePublished":"2024-06-13T13:18:14+00:00","mainEntityOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/"},"wordCount":367,"commentCount":0,"image":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png","keywords":["Backend","Java Development","Software Architecture","Software Engineering","Spring Boot"],"articleSection":["Backend","Java Application","Java Development","JavaScript","Software Architecture","Software Engineering","Spring Boot"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/","url":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/","name":"Spring Boot Annotations - InnovationM - Blog","isPartOf":{"@id":"https:\/\/www.innovationm.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#primaryimage"},"image":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#primaryimage"},"thumbnailUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png","datePublished":"2024-06-13T13:18:14+00:00","author":{"@id":"https:\/\/www.innovationm.com\/blog\/#\/schema\/person\/a831bf4602d69d1fa452e3de0c8862ed"},"description":"Discover the power of Spring Boot annotations! From @SpringBootApplication to @Autowired, learn how these annotations simplify Java application development.","breadcrumb":{"@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#primaryimage","url":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png","contentUrl":"https:\/\/www.innovationm.com\/blog\/wp-content\/uploads\/2024\/06\/Spring-Boot-Annotations.png","width":2240,"height":1260,"caption":"InnovationM Blog"},{"@type":"BreadcrumbList","@id":"https:\/\/www.innovationm.com\/blog\/spring-boot-annotations\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.innovationm.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Spring Boot Annotations"}]},{"@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\/8179","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=8179"}],"version-history":[{"count":0,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/posts\/8179\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media\/8180"}],"wp:attachment":[{"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/media?parent=8179"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/categories?post=8179"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.innovationm.com\/blog\/wp-json\/wp\/v2\/tags?post=8179"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}