{"id":33225,"date":"2024-11-01T09:14:40","date_gmt":"2024-11-01T09:14:40","guid":{"rendered":"http:\/\/atmokpo.com\/w\/?p=33225"},"modified":"2024-11-01T11:28:23","modified_gmt":"2024-11-01T11:28:23","slug":"spring-boot-backend-development-course-spring-boot-that-makes-spring-easier","status":"publish","type":"post","link":"https:\/\/atmokpo.com\/w\/33225\/","title":{"rendered":"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier"},"content":{"rendered":"<p>Spring Boot is a very important framework for modern web application development. It simplifies the configuration and complexity of the Spring framework, helping developers create applications more quickly and efficiently. In this course, we will explain the concepts of Spring Boot, how it works, its advantages, and how it reduces the complexities of backend development through real projects.<\/p>\n<h2>1. What is Spring Boot?<\/h2>\n<p>Spring Boot is a framework for web application development based on the Spring framework. While the Spring framework is very powerful and flexible, its complex configuration can be a challenge for beginners or teams that want rapid development. To solve this problem, Spring Boot was introduced. Spring Boot enables the creation of &#8216;configuration-less&#8217; applications, supporting efficient development.<\/p>\n<h3>1.1. Key Features of Spring Boot<\/h3>\n<ul>\n<li><strong>Auto Configuration:<\/strong> Automatically configures appropriate beans based on the libraries used in the application.<\/li>\n<li><strong>Starters:<\/strong> Provides predefined dependencies to easily add various functionalities, allowing developers to quickly utilize the features they may need.<\/li>\n<li><strong>Production Ready:<\/strong> Integrates heterogeneous services and offers various features for monitoring and management.<\/li>\n<li><strong>Embedded Server:<\/strong> Includes web servers like Tomcat and Jetty, allowing applications to run without separate server configuration.<\/li>\n<\/ul>\n<h2>2. Advantages of Spring Boot<\/h2>\n<p>One of the main reasons to use Spring Boot is to enhance productivity. Spring Boot offers numerous benefits to developers through several key features.<\/p>\n<h3>2.1. Fast Development<\/h3>\n<p>By using Spring Boot starters, necessary dependencies can be easily added, and auto configuration minimizes the settings required to start and run the application. This saves time during the initial stages of development.<\/p>\n<h3>2.2. Easy Maintenance<\/h3>\n<p>As the code becomes more concise and unnecessary settings are reduced, maintaining the application becomes easier. Additionally, Spring Boot is continuously updated to reflect the latest trends, making adaptation to new technology stacks easier.<\/p>\n<h3>2.3. Production Ready<\/h3>\n<p>Spring Boot provides many production features by default, offering useful tools for service monitoring, database connection, logging, error handling, and more.<\/p>\n<h2>3. Getting Started with Spring Boot<\/h2>\n<p>Now, let&#8217;s learn how to use Spring Boot through a real project. This course will cover the process of creating a simple RESTful API.<\/p>\n<h3>3.1. Project Setup<\/h3>\n<p>There are several ways to set up a Spring Boot project, but the easiest and fastest way is to use <a href=\"https:\/\/start.spring.io\/\">Spring Initializr<\/a>. By selecting the necessary dependencies and entering basic configurations on this site, you can receive a ZIP file containing the basic structure of a Spring Boot application.<\/p>\n<h3>3.2. Adding Dependencies<\/h3>\n<p>Dependencies needed to build a REST API include &#8216;Spring Web&#8217;, &#8216;Spring Data JPA&#8217;, and &#8216;H2 Database&#8217; or a driver that matches the actual database. After selecting these dependencies, download the project.<\/p>\n<h3>3.3. Writing the Application Class<\/h3>\n<p>By default, if you look for the Application class in the src\/main\/java directory of the generated project, you will see that the @SpringBootApplication annotation is declared. This serves as the entry point of the Spring Boot application. You can run the application through this class.<\/p>\n<pre><code>import org.springframework.boot.SpringApplication;\nimport org.springframework.boot.autoconfigure.SpringBootApplication;\n\n@SpringBootApplication\npublic class Application {\n    public static void main(String[] args) {\n        SpringApplication.run(Application.class, args);\n    }\n}\n<\/code><\/pre>\n<h3>3.4. Creating a REST Controller<\/h3>\n<p>The next step is to create a controller that will handle the REST API. After creating a new package under the src\/main\/java directory, write a class that defines the endpoints of the REST API. Use the @RestController annotation to define this and add a mapping to handle GET requests using the @GetMapping annotation.<\/p>\n<pre><code>import org.springframework.web.bind.annotation.GetMapping;\nimport org.springframework.web.bind.annotation.RestController;\n\n@RestController\npublic class HelloController {\n    @GetMapping(\"\/hello\")\n    public String hello() {\n        return \"Hello, Spring Boot!\";\n    }\n}\n<\/code><\/pre>\n<h3>3.5. Running the Application<\/h3>\n<p>Now, when you run the application in the IDE, the embedded Tomcat server will start, and you can access http:\/\/localhost:8080\/hello to see the message &#8220;Hello, Spring Boot!&#8221;.<\/p>\n<h2>4. Advanced Features of Spring Boot<\/h2>\n<p>Spring Boot provides a variety of powerful features beyond those for creating basic REST APIs, enabling the creation of scalable applications.<\/p>\n<h3>4.1. Database Integration<\/h3>\n<p>Using Spring Data JPA, you can connect to the database in an object-oriented programming way. Spring Boot automatically handles JPA-related configurations, keeping the code simple. We will cover how to connect databases and models through a board application example.<\/p>\n<h4>4.1.1. Creating an Entity Class<\/h4>\n<pre><code>import javax.persistence.Entity;\nimport javax.persistence.GeneratedValue;\nimport javax.persistence.GenerationType;\nimport javax.persistence.Id;\n\n@Entity\npublic class Post {\n    @Id\n    @GeneratedValue(strategy = GenerationType.IDENTITY)\n    private Long id;\n\n    private String title;\n    private String content;\n\n    \/\/ getters and setters\n}\n<\/code><\/pre>\n<h4>4.1.2. Defining a Repository Interface<\/h4>\n<p>To utilize the features of Spring Data JPA, define an interface that extends <strong>JpaRepository<\/strong> to easily perform data operations.<\/p>\n<pre><code>import org.springframework.data.jpa.repository.JpaRepository;\n\npublic interface PostRepository extends JpaRepository<Post, Long> {\n}\n<\/code><\/pre>\n<h3>4.2. Adding Security Features<\/h3>\n<p>By integrating Spring Security, you can add security to the application. Spring Boot offers various features that simplify security settings.<\/p>\n<h3>4.3. Adhering to RESTful API Design Principles<\/h3>\n<p>In a RESTful API, it is important to design based on resources. Using HTTP methods (GET, POST, PUT, DELETE) and status codes can clarify the interaction between client and server.<\/p>\n<h2>5. Real-World Project Utilizing Spring Boot<\/h2>\n<p>Now, let&#8217;s create a simple board application based on the main concepts and technologies of Spring Boot. This project will use various features to help you understand the overall flow of Spring Boot.<\/p>\n<h3>5.1. Analyzing Project Requirements<\/h3>\n<p>The basic requirements for the board application are as follows.<\/p>\n<ul>\n<li>View list of posts<\/li>\n<li>Create a post<\/li>\n<li>Edit a post<\/li>\n<li>Delete a post<\/li>\n<li>View details of a post<\/li>\n<\/ul>\n<h3>5.2. Designing Models and Repositories<\/h3>\n<p>We will handle database operations using the previously created <strong>Post<\/strong> entity and <strong>PostRepository<\/strong>.<\/p>\n<h3>5.3. Adding a Service Layer<\/h3>\n<p>Add a service layer to handle business logic, separating responsibilities from the controller. This helps make maintenance and testing easier.<\/p>\n<pre><code>import org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.stereotype.Service;\nimport java.util.List;\n\n@Service\npublic class PostService {\n    @Autowired\n    private PostRepository postRepository;\n\n    public List<Post> findAll() {\n        return postRepository.findAll();\n    }\n\n    public Post save(Post post) {\n        return postRepository.save(post);\n    }\n\n    \/\/ CRUD operations\n}\n<\/code><\/pre>\n<h3>5.4. Implementing the REST API<\/h3>\n<p>The controller handles HTTP requests by calling the methods defined in the service layer and returns appropriate responses to the client.<\/p>\n<pre><code>import 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(\"\/posts\")\npublic class PostController {\n    @Autowired\n    private PostService postService;\n\n    @GetMapping\n    public List<Post> getAllPosts() {\n        return postService.findAll();\n    }\n\n    @PostMapping\n    public ResponseEntity<Post> createPost(@RequestBody Post post) {\n        Post createdPost = postService.save(post);\n        return ResponseEntity.ok(createdPost);\n    }\n\n    \/\/ Additional CRUD endpoints\n}\n<\/code><\/pre>\n<h3>5.5. Using ControllerAdvice for Exception Handling<\/h3>\n<p>With Spring Boot, you can define a <strong>ControllerAdvice<\/strong> that globally manages exception handling and responses. This enhances the stability of the application.<\/p>\n<pre><code>import org.springframework.http.HttpStatus;\nimport org.springframework.http.ResponseEntity;\nimport org.springframework.web.bind.annotation.ControllerAdvice;\nimport org.springframework.web.bind.annotation.ExceptionHandler;\n\n@ControllerAdvice\npublic class GlobalExceptionHandler {\n    @ExceptionHandler(Exception.class)\n    public ResponseEntity<String> handleException(Exception e) {\n        return new ResponseEntity<>(e.getMessage(), HttpStatus.INTERNAL_SERVER_ERROR);\n    }\n}\n<\/code><\/pre>\n<h2>6. Conclusion<\/h2>\n<p>Through this course, we explored the basic concepts and practical use cases of Spring Boot. Spring Boot reduces complex configurations and enables rapid development, supporting various production-ready features. This allows developers to focus on business logic, leading to the creation of higher-quality products. We hope you will design and implement various solutions using Spring Boot!<\/p>\n<h2>7. References<\/h2>\n<ul>\n<li><a href=\"https:\/\/spring.io\/projects\/spring-boot\">Official Spring Boot Page<\/a><\/li>\n<li><a href=\"https:\/\/www.baeldung.com\/spring-boot\">Baeldung &#8211; Spring Boot Course<\/a><\/li>\n<li><a href=\"https:\/\/www.spring.io\/guides\/gs\/spring-boot\/\">Spring Boot Guide<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Spring Boot is a very important framework for modern web application development. It simplifies the configuration and complexity of the Spring framework, helping developers create applications more quickly and efficiently. In this course, we will explain the concepts of Spring Boot, how it works, its advantages, and how it reduces the complexities of backend development &hellip; <a href=\"https:\/\/atmokpo.com\/w\/33225\/\" class=\"more-link\">\ub354 \ubcf4\uae30<span class=\"screen-reader-text\"> &#8220;Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier&#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-33225","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, Spring Boot that Makes Spring Easier - \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\/33225\/\" \/>\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, Spring Boot that Makes Spring Easier - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"og:description\" content=\"Spring Boot is a very important framework for modern web application development. It simplifies the configuration and complexity of the Spring framework, helping developers create applications more quickly and efficiently. In this course, we will explain the concepts of Spring Boot, how it works, its advantages, and how it reduces the complexities of backend development &hellip; \ub354 \ubcf4\uae30 &quot;Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier&quot;\" \/>\n<meta property=\"og:url\" content=\"https:\/\/atmokpo.com\/w\/33225\/\" \/>\n<meta property=\"og:site_name\" content=\"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\" \/>\n<meta property=\"article:published_time\" content=\"2024-11-01T09:14:40+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-11-01T11:28:23+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=\"6\ubd84\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/\"},\"author\":{\"name\":\"root\",\"@id\":\"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7\"},\"headline\":\"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier\",\"datePublished\":\"2024-11-01T09:14:40+00:00\",\"dateModified\":\"2024-11-01T11:28:23+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/\"},\"wordCount\":961,\"publisher\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#organization\"},\"articleSection\":[\"Spring Boot backend development\"],\"inLanguage\":\"ko-KR\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/\",\"url\":\"https:\/\/atmokpo.com\/w\/33225\/\",\"name\":\"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8\",\"isPartOf\":{\"@id\":\"https:\/\/atmokpo.com\/w\/#website\"},\"datePublished\":\"2024-11-01T09:14:40+00:00\",\"dateModified\":\"2024-11-01T11:28:23+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/#breadcrumb\"},\"inLanguage\":\"ko-KR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/atmokpo.com\/w\/33225\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/atmokpo.com\/w\/33225\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\ud648\",\"item\":\"https:\/\/atmokpo.com\/w\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier\"}]},{\"@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, Spring Boot that Makes Spring Easier - \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\/33225\/","og_locale":"ko_KR","og_type":"article","og_title":"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","og_description":"Spring Boot is a very important framework for modern web application development. It simplifies the configuration and complexity of the Spring framework, helping developers create applications more quickly and efficiently. In this course, we will explain the concepts of Spring Boot, how it works, its advantages, and how it reduces the complexities of backend development &hellip; \ub354 \ubcf4\uae30 \"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier\"","og_url":"https:\/\/atmokpo.com\/w\/33225\/","og_site_name":"\ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","article_published_time":"2024-11-01T09:14:40+00:00","article_modified_time":"2024-11-01T11:28:23+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":"6\ubd84"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/atmokpo.com\/w\/33225\/#article","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/33225\/"},"author":{"name":"root","@id":"https:\/\/atmokpo.com\/w\/#\/schema\/person\/91b6b3b138fbba0efb4ae64b1abd81d7"},"headline":"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier","datePublished":"2024-11-01T09:14:40+00:00","dateModified":"2024-11-01T11:28:23+00:00","mainEntityOfPage":{"@id":"https:\/\/atmokpo.com\/w\/33225\/"},"wordCount":961,"publisher":{"@id":"https:\/\/atmokpo.com\/w\/#organization"},"articleSection":["Spring Boot backend development"],"inLanguage":"ko-KR"},{"@type":"WebPage","@id":"https:\/\/atmokpo.com\/w\/33225\/","url":"https:\/\/atmokpo.com\/w\/33225\/","name":"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier - \ub77c\uc774\ube0c\uc2a4\ub9c8\ud2b8","isPartOf":{"@id":"https:\/\/atmokpo.com\/w\/#website"},"datePublished":"2024-11-01T09:14:40+00:00","dateModified":"2024-11-01T11:28:23+00:00","breadcrumb":{"@id":"https:\/\/atmokpo.com\/w\/33225\/#breadcrumb"},"inLanguage":"ko-KR","potentialAction":[{"@type":"ReadAction","target":["https:\/\/atmokpo.com\/w\/33225\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/atmokpo.com\/w\/33225\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\ud648","item":"https:\/\/atmokpo.com\/w\/en\/"},{"@type":"ListItem","position":2,"name":"Spring Boot Backend Development Course, Spring Boot that Makes Spring Easier"}]},{"@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\/33225","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=33225"}],"version-history":[{"count":1,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33225\/revisions"}],"predecessor-version":[{"id":33226,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/posts\/33225\/revisions\/33226"}],"wp:attachment":[{"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/media?parent=33225"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/categories?post=33225"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/atmokpo.com\/w\/wp-json\/wp\/v2\/tags?post=33225"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}