{"id":33105,"date":"2024-11-01T09:13:48","date_gmt":"2024-11-01T09:13:48","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33105"},"modified":"2024-11-01T11:28:57","modified_gmt":"2024-11-01T11:28:57","slug":"spring-boot-backend-development-course-blog-creation-example-writing-service-method-code","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33105\/","title":{"rendered":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code"},"content":{"rendered":"<p><body><\/p>\n<h2>Blog Creation Example: Writing Service Method Code<\/h2>\n<p>This tutorial covers how to create a simple blog using Spring Boot. We will implement CRUD (Create, Read, Update, Delete) functionalities for blog posts. This tutorial will proceed step-by-step from the basic setup of Spring Boot to writing service method code.<\/p>\n<h2>1. Introduction to Spring Boot<\/h2>\n<p>Spring Boot is a framework that simplifies the configuration of the Spring Framework and helps create standalone applications easily. Spring Boot provides various starter dependencies and supports rapid development and deployment. In this tutorial, we will use Spring Boot to create a RESTful API and implement CRUD functionalities.<\/p>\n<h2>2. Setting Up Development Environment<\/h2>\n<p>To develop a Spring Boot application, you need the Java Development Kit (JDK) and an Integrated Development Environment (IDE). IntelliJ IDEA or Eclipse is recommended, and you will need JDK version 11 or higher.<\/p>\n<pre><code>https:\/\/spring.io\/projects\/spring-boot<\/code><\/pre>\n<h3>2.1. Creating a Project<\/h3>\n<p>You can use Spring Initializr to create a Spring Boot project. Please use the following settings:<\/p>\n<ul>\n<li>Project: Maven Project<\/li>\n<li>Language: Java<\/li>\n<li>Spring Boot: 2.5.x (choose the latest stable version)<\/li>\n<li>Group: com.example<\/li>\n<li>Artifact: blog<\/li>\n<li>Dependencies: Spring Web, Spring Data JPA, H2 Database (or MySQL)<\/li>\n<\/ul>\n<h3>2.2. Project Structure<\/h3>\n<p>Once the Spring Boot project is created, it has the following basic structure:<\/p>\n<pre><code>\nblog\n\u251c\u2500\u2500 src\n\u2502   \u251c\u2500\u2500 main\n\u2502   \u2502   \u251c\u2500\u2500 java\n\u2502   \u2502   \u2502   \u2514\u2500\u2500 com\n\u2502   \u2502   \u2502       \u2514\u2500\u2500 example\n\u2502   \u2502   \u2502           \u2514\u2500\u2500 blog\n\u2502   \u2502   \u2502               \u251c\u2500\u2500 BlogApplication.java\n\u2502   \u2502   \u2502               \u251c\u2500\u2500 controller\n\u2502   \u2502   \u2502               \u251c\u2500\u2500 model\n\u2502   \u2502   \u2502               \u2514\u2500\u2500 repository\n\u2502   \u2502   \u2514\u2500\u2500 resources\n\u2502   \u2502       \u251c\u2500\u2500 application.properties\n\u2502   \u2502       \u2514\u2500\u2500 static\n\u2502   \u2514\u2500\u2500 test\n\u2514\u2500\u2500 pom.xml\n<\/code><\/pre>\n<h2>3. Writing Blog Model Class<\/h2>\n<p>We will write a model class that can represent a blog post. Below is an example of the Post model class:<\/p>\n<pre><code>package com.example.blog.model;\n\nimport javax.persistence.Entity;\nimport javax.persistence.GeneratedValue;\nimport javax.persistence.GenerationType;\nimport javax.persistence.Id;\nimport javax.persistence.Column;\n\n@Entity\npublic class Post {\n    @Id\n    @GeneratedValue(strategy = GenerationType.IDENTITY)\n    private Long id;\n\n    @Column(nullable = false)\n    private String title;\n\n    @Column(nullable = false, length = 1000)\n    private String content;\n\n    \/\/ Constructor, getter, setter omitted\n}\n<\/code><\/pre>\n<h2>4. Writing Repository Interface<\/h2>\n<p>To interact with the database, we will write a repository class. Since we will be using Spring Data JPA, we can simply define the interface:<\/p>\n<pre><code>package com.example.blog.repository;\n\nimport com.example.blog.model.Post;\nimport org.springframework.data.jpa.repository.JpaRepository;\n\npublic interface PostRepository extends JpaRepository&lt;Post, Long&gt; {\n}\n<\/code><\/pre>\n<h2>5. Writing Service Class<\/h2>\n<p>We will write a service class to handle business logic. The service class will implement methods for CRUD functionalities:<\/p>\n<pre><code>package com.example.blog.service;\n\nimport com.example.blog.model.Post;\nimport com.example.blog.repository.PostRepository;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\n\nimport java.util.List;\nimport java.util.Optional;\n\n@Service\npublic class PostService {\n    @Autowired\n    private PostRepository postRepository;\n\n    \/\/ Retrieve list of posts\n    public List&lt;Post&gt; findAll() {\n        return postRepository.findAll();\n    }\n\n    \/\/ Add a post\n    public Post save(Post post) {\n        return postRepository.save(post);\n    }\n\n    \/\/ Retrieve a post\n    public Optional&lt;Post&gt; findById(Long id) {\n        return postRepository.findById(id);\n    }\n\n    \/\/ Update a post\n    public Post update(Long id, Post postDetails) {\n        Post post = postRepository.findById(id).orElseThrow(() -&gt; new RuntimeException(\"Post not found.\"));\n        post.setTitle(postDetails.getTitle());\n        post.setContent(postDetails.getContent());\n        return postRepository.save(post);\n    }\n\n    \/\/ Delete a post\n    public void delete(Long id) {\n        postRepository.deleteById(id);\n    }\n}\n<\/code><\/pre>\n<h2>6. Writing Controller Class<\/h2>\n<p>We will write a REST controller class to handle client requests. This class will receive HTTP requests and call appropriate service methods:<\/p>\n<pre><code>package com.example.blog.controller;\n\nimport com.example.blog.model.Post;\nimport com.example.blog.service.PostService;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.http.ResponseEntity;\nimport org.springframework.web.bind.annotation.*;\n\nimport java.util.List;\n\n@RestController\n@RequestMapping(\"\/api\/posts\")\npublic class PostController {\n    @Autowired\n    private PostService postService;\n\n    \/\/ Retrieve list of posts\n    @GetMapping\n    public List&lt;Post&gt; getAllPosts() {\n        return postService.findAll();\n    }\n\n    \/\/ Add a post\n    @PostMapping\n    public Post createPost(@RequestBody Post post) {\n        return postService.save(post);\n    }\n\n    \/\/ Retrieve a post\n    @GetMapping(\"\/{id}\")\n    public ResponseEntity&lt;Post&gt; getPostById(@PathVariable Long id) {\n        return postService.findById(id)\n                .map(ResponseEntity::ok)\n                .orElse(ResponseEntity.notFound().build());\n    }\n\n    \/\/ Update a post\n    @PutMapping(\"\/{id}\")\n    public ResponseEntity&lt;Post&gt; updatePost(@PathVariable Long id, @RequestBody Post postDetails) {\n        try {\n            Post updatedPost = postService.update(id, postDetails);\n            return ResponseEntity.ok(updatedPost);\n        } catch (RuntimeException e) {\n            return ResponseEntity.notFound().build();\n        }\n    }\n\n    \/\/ Delete a post\n    @DeleteMapping(\"\/{id}\")\n    public ResponseEntity&lt;Void&gt; deletePost(@PathVariable Long id) {\n        postService.delete(id);\n        return ResponseEntity.noContent().build();\n    }\n}\n<\/code><\/pre>\n<h2>7. Application Configuration<\/h2>\n<p>Add database settings in the application.properties file. If you are using H2 database, set it up as follows:<\/p>\n<pre><code>\nspring.h2.console.enabled=true\nspring.datasource.url=jdbc:h2:mem:testdb\nspring.datasource.driverClassName=org.h2.Driver\nspring.datasource.username=sa\nspring.datasource.password=\nspring.jpa.database-platform=org.hibernate.dialect.H2Dialect\n<\/code><\/pre>\n<h2>8. Running the Application<\/h2>\n<p>Once all the settings are complete, you can run the application. You can run the <code>BlogApplication.java<\/code> class using your IDE, or use the command below in the terminal:<\/p>\n<pre><code>mvn spring-boot:run<\/code><\/pre>\n<h2>9. API Testing with Postman<\/h2>\n<p>Once the application is running correctly, you can use Postman to test the API. Here are various HTTP requests you can use:<\/p>\n<ul>\n<li>GET \/api\/posts &#8211; Retrieve all posts<\/li>\n<li>POST \/api\/posts &#8211; Add a post<\/li>\n<li>GET \/api\/posts\/{id} &#8211; Retrieve a specific post<\/li>\n<li>PUT \/api\/posts\/{id} &#8211; Update a post<\/li>\n<li>DELETE \/api\/posts\/{id} &#8211; Delete a post<\/li>\n<\/ul>\n<h2>Conclusion<\/h2>\n<p>In this tutorial, we explained how to implement the backend of a blog application using Spring Boot. We established services and REST APIs that provide CRUD functionalities, allowing users to manage blog posts. We hope this tutorial helps you understand the fundamentals of Spring Boot and lays the groundwork for actual application development.<\/p>\n<h2>Additional Learning Resources<\/h2>\n<ul>\n<li><a href=\"https:\/\/spring.io\/guides\/gs\/rest-service\/\">Spring REST Service Guide<\/a><\/li>\n<li><a href=\"https:\/\/spring.io\/guides\/gs\/accessing-data-jpa\/\">Spring Data JPA Guide<\/a><\/li>\n<li><a href=\"https:\/\/www.baeldung.com\/spring-boot\">Baeldung&#8217;s Spring Boot Guide<\/a><\/li>\n<\/ul>\n<p><\/body><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Blog Creation Example: Writing Service Method Code This tutorial covers how to create a simple blog using Spring Boot. We will implement CRUD (Create, Read, Update, Delete) functionalities for blog posts. This tutorial will proceed step-by-step from the basic setup of Spring Boot to writing service method code. 1. Introduction to Spring Boot Spring Boot &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33105\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_jetpack_memberships_contains_paid_content":false,"footnotes":""},"categories":[131],"tags":[],"class_list":["post-33105","post","type-post","status-publish","format-standard","hentry","category-spring-boot-backend-development"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.2 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/atmokpo.com\/w\/33105\/\" \/>\n<meta property=\"og:locale\" content=\"ko_KR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Blog Creation Example: Writing Service Method Code This tutorial covers how to create a simple blog using Spring Boot. We will implement CRUD (Create, Read, Update, Delete) functionalities for blog posts. This tutorial will proceed step-by-step from the basic setup of Spring Boot to writing service method code. 1. Introduction to Spring Boot Spring Boot &hellip; \ub354 \ubcf4\uae30 &quot;Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33105\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:13:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:28:57+00:00\" \/>\n<meta name=\"author\" content=\"root\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:site\" content=\"@bebubo4\" \/>\n<meta name=\"twitter:label1\" content=\"\uae00\uc4f4\uc774\" \/>\n\t<meta name=\"twitter:data1\" content=\"root\" \/>\n\t<meta name=\"twitter:label2\" content=\"\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04\" \/>\n\t<meta name=\"twitter:data2\" content=\"5\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code\",\"datePublished\":\"2024-11-01T09:13:48+00:00\",\"dateModified\":\"2024-11-01T11:28:57+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/\"},\"wordCount\":497,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Spring Boot backend development\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33105\/\",\"name\":\"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:13:48+00:00\",\"dateModified\":\"2024-11-01T11:28:57+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33105\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33105\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/atmokpo.com\/w\/#website\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/atmokpo.com\/w\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"ko-KR\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\",\"name\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"url\":\"https:\/\/atmokpo.com\/w\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"contentUrl\":\"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png\",\"width\":400,\"height\":400,\"caption\":\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\"},\"image\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/bebubo4\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\",\"name\":\"root\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ko-KR\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g\",\"caption\":\"root\"},\"sameAs\":[\"http:\/\/atmokpo.com\/w\"],\"url\":\"https:\/\/atmokpo.com\/w\/author\/root\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","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:\/\/atmokpo.com\/w\/33105\/","og_locale":"ko_KR","og_type":"article","og_title":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Blog Creation Example: Writing Service Method Code This tutorial covers how to create a simple blog using Spring Boot. We will implement CRUD (Create, Read, Update, Delete) functionalities for blog posts. This tutorial will proceed step-by-step from the basic setup of Spring Boot to writing service method code. 1. Introduction to Spring Boot Spring Boot &hellip; \ub354 \ubcf4\uae30 \"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code\"","og_url":"https:\/\/atmokpo.com\/w\/33105\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:13:48+00:00","article_modified_time":"2024-11-01T11:28:57+00:00","author":"root","twitter_card":"summary_large_image","twitter_creator":"@bebubo4","twitter_site":"@bebubo4","twitter_misc":{"\uae00\uc4f4\uc774":"root","\uc608\uc0c1 \ub418\ub294 \ud310\ub3c5 \uc2dc\uac04":"5\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/33105\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33105\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code","datePublished":"2024-11-01T09:13:48+00:00","dateModified":"2024-11-01T11:28:57+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33105\/"},"wordCount":497,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Spring Boot backend development"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33105\/","url":"https:\/\/atmokpo.com\/w\/33105\/","name":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:13:48+00:00","dateModified":"2024-11-01T11:28:57+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33105\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33105\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33105\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Spring Boot Backend Development Course, Blog Creation Example, Writing Service Method Code"}]},{"@type":"WebSite","@id":"https:\/\/atmokpo.com\/w\/#website","url":"https:\/\/atmokpo.com\/w\/","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","description":"","publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/atmokpo.com\/w\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ko-KR"},{"@type":"Organization","@id":"https:\/\/atmokpo.com\/w\/#organization","name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","url":"https:\/\/atmokpo.com\/w\/","logo":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/","url":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","contentUrl":"https:\/\/atmokpo.com\/w\/wp-content\/uploads\/2024\/11\/logo.png","width":400,"height":400,"caption":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8"},"image":{"@id":"https:\/\/atmokpo.com\/w\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/bebubo4"]},{"@type":"Person","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7","name":"root","image":{"@type":"ImageObject","inLanguage":"ko-KR","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/708197b41fc6435a7ce22d951b25d4a47e9e904270cb1f04682d4f025066f80c?s=96&d=mm&r=g","caption":"root"},"sameAs":["http:\/\/atmokpo.com\/w"],"url":"https:\/\/atmokpo.com\/w\/author\/root\/"}]}},"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33105","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/comments?post=33105"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33105\/revisions"}],"predecessor-version":[{"id":33106,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33105\/revisions\/33106"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33105"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33105"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33105"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}