springboot을 사용하여 간단한 RESTAPI를 만드는 방법

이 글은 처음 adityasridhar.com년에 발표되었다
이 문서의 일부로 Springboot을 사용하여 2개의 간단한 RESTAPI를 구축합니다.본고는springboot을 어떻게 신속하게 사용하기 시작하는지 소개할 것이다.
시작합시다.😄

선결 조건


본문을 시작하기 전에 시스템에 Maven이 설치되어 있는지 확인하십시오.
https://maven.apache.org/에서 Maven을 설치할 수 있습니다.mvn 명령이 작동할 수 있도록 경로에 Maven을 설정해야 합니다.
마ven이 설치되었는지 확인할 수 있고 명령으로 접근할 수 있습니다
mvn -v
JAVA_HOME이 설치되어 있는지 확인합니다.

프로젝트 설정


첫 번째 단계는 항목 설정입니다.
Springboot 프로젝트를 만드는 것은 매우 쉽다.
https://start.spring.io/으로 이동합니다.
사이트에 단순 RESTAPI로 가공소재 이름을 입력하고 종속 항목에 웹을 추가합니다.다른 가공소재의 이름을 입력할 수도 있습니다.
또한 맨 위에는 Springboot 2.0.6 버전을 사용하여 Java를 사용하여 Maven 프로젝트를 만드십시오. 이것은 본고의 결과가 중복될 수 있도록 하기 위해서입니다.본문을 완성한 후, 당신은 다른 옵션을 선택하여 실험을 진행할 수 있습니다😄
정보를 입력한 후 화면은 다음과 같이 해야 한다

Generate Project를 클릭하면 zip 파일을 컴퓨터에 다운로드할 수 있습니다.이 zip 파일을 추출합니다.추출된 폴더는springboot 항목입니다.
원하는 IDE로 항목을 가져올 수 있습니다.나는 이것을 시도하기 위해 eclipse를 사용한다.

프로젝트 구조 설명


pom。xml


이 파일은 모든maven 의존 항목을 가지고 있습니다.
주의해야 할 주요 의존성은 다음과 같다.
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
spring boot starter 웹 의존성 확보 이 프로젝트는 웹 응용 프로그램에 사용할 수 있습니다
pom에서 또 다른 중요한 일을 주의해야 한다.xml은 다음과 같습니다.
<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.6.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
</parent>
spring boot starter 상위 항목은 이 항목의 상위 항목입니다.이것은springboot에 필요한 모든 내부 의존 관계가 자동으로 처리되어 개발자가 걱정할 필요가 없음을 확보합니다.

SimpleRestapis 응용 프로그램.Java 언어


이 파일은 프로젝트 이름과 응용 프로그램 이름으로 명명됩니다.
이 파일은 src/main/java 폴더와com 내부에 있습니다.인스턴스simplerestapis 패키지.
이 파일에는 다음 코드가 포함되어 있습니다.
package com.example.simplerestapis;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class SimpleRestApisApplication {

    public static void main(String[] args) {
        SpringApplication.run(SimpleRestApisApplication.class, args);
    }
}
여기서 주요 하이라이트는 SpringBoot Application에 대한 설명입니다.이것은 내부에서 다음과 같은 세 개의 주석의 조합이다

  • @ 구성: 수동 스프링 구성이 필요합니다.이 설명을 추가하면 단독 xml 파일을 사용하지 않고java 클래스 자체에서 설정을 완성할 수 있습니다.

  • @EnableAutoConfiguration: Spring은 많은 구성이 필요합니다.이 주석은 많은 설정이 자동으로 완성되는 것을 확보했다.

  • @ComponentScan: Spring에서 구성 요소를 스캔할 수 있는 위치를 알려 줍니다.
  • SpringApplication.run(SimpleRestApisApplication.class, args); 부트 응용 프로그램.

    활용단어참조속성


    이 파일은 src/main/resources에 있습니다.이 파일은 응용 프로그램을 실행할 때 사용할 속성을 보여 줍니다.예를 들어, 응용 프로그램이 어느 포트에서 실행되어야 하는지를 설명하는 데 사용할 수 있다.

    비밀번호


    여기에 구축된 API 코드는 found here입니다.

    첫 번째 API 만들기


    우리의 첫 번째 API는 GET 요청을 보여주는 간단한 API가 될 것입니다.
    com이라는 패키지를 만듭니다.인스턴스simplerestapis.모형.이 패키지에 SampleResponse라는 파일을 만듭니다.Java 언어
    다음 코드를 SampleResponse로 복사합니다.Java 언어
    package com.example.simplerestapis.models;
    public class SampleResponse {
        private String message;
        private long id;
    
        public String getMessage() {
            return message;
        }
    
        public void setMessage(String message) {
            this.message = message;
        }
    
        public long getId() {
            return id;
        }
    
        public void setId(long id) {
            this.id = id;
        }
    
    }
    
    샘플러 응답.java는 단지 모델 클래스일 뿐이다.이것은api 응답에 존재하는 필드를 표시합니다.
    com이라는 패키지를 만듭니다.인스턴스simplerestapis.컨트롤러.이 패키지에 WebController라는 파일을 만듭니다.Java 언어
    다음 코드를 WebController로 복사합니다.Java 언어
    package com.example.simplerestapis.controller;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import com.example.simplerestapis.models.SampleResponse;
    
    @RestController
    public class WebController {
    
        @RequestMapping("/sample")
        public SampleResponse Sample(@RequestParam(value = "name",
        defaultValue = "Robot") String name) {
            SampleResponse response = new SampleResponse();
            response.setId(1);
            response.setMessage("Your name is "+name);
            return response;
    
        }
    }
    
    위의 코드에서 주석 @RestController는 클래스에 Rest 단점이 있음을 나타냅니다.
    이 주석은 기본적으로 이 클래스가 컨트롤러라는 것을 알려줍니다. 이 클래스의 함수에서 되돌아오는 값은 JSON이나 XML로 변환됩니다.JSON의 기본값입니다.
    @RequestMapping에서 Sample 함수에/sample 끝점을 매핑합니다.
    @RequestParam은 끝점/견본에name이라는 검색 매개 변수가 있음을 나타냅니다.이름에 대한 기본값은 Robot입니다.
    함수 중의 코드는 매우 간단하다.이름 값에 따라 응답을 설정하고 있습니다.
    명령 프롬프트로 이동합니다.프로젝트 폴더에 들어가서 다음 명령을 실행하여 응용 프로그램을 시작합니다
    mvn spring-boot:run
    
    기본적으로 애플리케이션은 로컬 호스트의 8080 포트에서 실행됩니다.
    api 단점을 테스트하기 위해 Postman을 사용할 수 있습니다.주어진 링크에서postman을 다운로드합니다.
    postman으로 이동하여 다음 URL을 입력하십시오
    로컬 호스트: 8080/샘플?name=aditya 그리고send를 누르십시오.

    다음 응답으로 돌아갑니다.
    {
        "message": "Your name is aditya",
        "id": 1
    }
    
    다음 URL을 시도해 보겠습니다.
    로컬 호스트: 8080/sample 및send 클릭
    다음 응답으로 돌아갑니다.
    {
        "message": "Your name is Robot",
        "id": 1
    }
    

    축하한다😄


    springboot을 사용하여 첫 번째 API를 만들었습니다.검색 매개 변수를 사용하여 간단한 GET restapi를 만드는 방법을 배웠습니다.

    두 번째 API 만들기


    두 번째 API는 POST 요청을 지원하는 API를 만드는 방법을 보여줍니다.
    내부인스턴스simplerestapis.모델 패키지, PostRequest라는 자바 클래스를 만듭니다.Java 언어
    다음 코드를 PostRequest에 복사합니다.Java 언어
    package com.example.simplerestapis.models;
    
    public class PostRequest {
        int id;
        String name;
        public int getId() {
            return id;
        }
        public String getName() {
            return name;
        }
        public void setId(int id) {
            this.id = id;
        }
        public void setName(String name) {
            this.name = name;
        }
    
    }
    
    POST 요청은 일반적으로 입력으로 전송되는 POST 본문이 있습니다.PostRequest.java는 게시물 본문에 존재하는 모든 필드를 입력합니다
    내부인스턴스simplerestapis.모델 패키지, PostResponse라는 자바 클래스를 만듭니다.Java 언어
    다음 코드를 PostResponse로 복사합니다.Java 언어
    package com.example.simplerestapis.models;
    
    public class PostResponse {
        int id;
        String message;
        String extra;
        public String getExtra() {
            return extra;
        }
        public int getId() {
            return id;
        }
        public String getMessage() {
            return message;
        }
        public void setExtra(String extra) {
            this.extra = extra;
        }
        public void setId(int id) {
            this.id = id;
        }
        public void setMessage(String message) {
            this.message = message;
        }
    
    }
    
    답장 후.java는 POST 요청 출력에 존재하는 필드를 나타냅니다.
    WebController에서java 다음 가져오기 추가
    import org.springframework.web.bind.annotation.RequestBody;
    import org.springframework.web.bind.annotation.RequestMethod;
    
    import com.example.simplerestapis.models.PostRequest;
    import com.example.simplerestapis.models.PostResponse;
    
    WebController에 다음 기능이 추가되었습니다.Java 언어
    @RequestMapping(value = "/test", method = RequestMethod.POST)
    public PostResponse Test(@RequestBody PostRequest inputPayload) {
        PostResponse response = new PostResponse();
        response.setId(inputPayload.getId()*100);
        response.setMessage("Hello " + inputPayload.getName());
        response.setExtra("Some text");
        return response;
    }
    
    이 코드는/test라는 새 단점을 만들고 테스트 함수에 비추었다
    또한 코드 method = RequestMethod.POST 표시/테스트api 단점은 POST 요청을 받아들일 수 있음
    @RequestBody PostRequest inputPayload는 post 요청이 PostRequest 형식의 입력post 본문을 가지고 있음을 나타냅니다.입력 기둥은 inputPayload 대상에 저장됩니다.
    코드는 매우 간단합니다. 그 중에서 다가오는 입력에 따라 응답을 설정합니다.
    유효 부하 입력 id 곱하기 100 및 출력 유효 부하 설정
    name 매개 변수에 Hello를 추가하고 출력 부하로 설정
    추가 매개 변수는 일부 텍스트의 문자열 값으로 인코딩됩니다.
    WebController의 최종 코드입니다.java는 다음과 같습니다.
    package com.example.simplerestapis.controller;
    import org.springframework.web.bind.annotation.RequestBody;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import org.springframework.web.bind.annotation.RequestParam;
    import org.springframework.web.bind.annotation.RestController;
    
    import com.example.simplerestapis.models.PostRequest;
    import com.example.simplerestapis.models.PostResponse;
    import com.example.simplerestapis.models.SampleResponse;
    
    @RestController
    public class WebController {
    
        @RequestMapping("/sample")
        public SampleResponse Sample(@RequestParam(value = "name",
        defaultValue = "Robot") String name) {
            SampleResponse response = new SampleResponse();
            response.setId(1);
            response.setMessage("Your name is "+name);
            return response;
    
        }
    
        @RequestMapping(value = "/test", method = RequestMethod.POST)
        public PostResponse Test(@RequestBody PostRequest inputPayload) {
            PostResponse response = new PostResponse();
            response.setId(inputPayload.getId()*100);
            response.setMessage("Hello " + inputPayload.getName());
            response.setExtra("Some text");
            return response;
        }
    }
    
    명령 프롬프트로 이동합니다.프로젝트 폴더에 들어가서 다음 명령을 실행하여 응용 프로그램을 시작합니다
    mvn spring-boot:run
    
    다음 그림과 같이 Postman을 열고 값을 설정합니다.

    기본적으로 요청 유형은 POST로 설정됩니다.
    enpoint URL localhost:8080/test로 입력
    게시물 본문에 들어가려면 body로 이동하여 raw를 선택하고 JSON(응용 프로그램/JSON)을 선택하십시오
    입력 기둥은 다음과 같습니다.
    {
        "id": 1,
        "name": "aditya"
    }
    
    보내기를 클릭하면 다음 출력이 표시됩니다.
    {
        "id": 100,
        "message": "Hello aditya",
        "extra": "Some text"
    }
    
    다른 입력 게시물 본문을 보내서 실험할 수 있습니다.

    축하한다😄


    이제 Springboot을 사용하여 GET 및 POST 요청 기반의 간단한 RESTAPI를 만드는 방법을 알게 되었습니다.😄
    Spring 및 Springboot에 대한 자세한 내용은 https://spring.io/을 참조하십시오.

    언제든지 저에게 연락하거나 따라주세요.


    만약 네가 이 게시물을 좋아한다면, 너는 나의 사이트를 볼 수 있다https://adityasridhar.com기타 유사 직위

    좋은 웹페이지 즐겨찾기