티스토리 뷰
- REST API 제대로 만들기.
- Spring Boot Project 생성 후 다음과 같이 Gradle 설정
plugins { id 'org.springframework.boot' version '2.6.1' id 'io.spring.dependency-management' version '1.0.11.RELEASE' id 'java' } group = 'com.rest' version = '0.0.1-SNAPSHOT' sourceCompatibility = '11' configurations { compileOnly { extendsFrom annotationProcessor } } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-boot-starter-data-jpa' implementation 'org.springframework.boot:spring-boot-starter-freemarker' implementation 'org.springframework.boot:spring-boot-starter-web' compileOnly 'org.projectlombok:lombok' runtimeOnly 'com.h2database:h2' runtimeOnly 'mysql:mysql-connector-java' annotationProcessor 'org.projectlombok:lombok' testImplementation 'org.springframework.boot:spring-boot-starter-test' }
dependencies를 제외하면, 본인의 설정에 맞게 세팅 해주면 된다.
DB관련은 사용하는 DB로 바꿔주자
- annotation 활용 SpringBootApplication을 어노테이션
- 해당 어노테이션을 Boot을 기능을 사용할 수 있도록 만들어 줌
package com.rest.api;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class Applications {
public static void main(String[]args){
SpringApplication.run(Applications.class, args);
}
}
- application.yml파일에 (Default값은 properties일텐데 확장자를 yml 로 바꿔준다.) 사용할 포트지정
server:
port: 8080
- Controller 생성. api패키지 밑에 Controller 패키지 생성 (진입지점 생성 > 맵핑 관련 )
- 간단한 Controller 작성
package com.rest.api.controller; import javax.annotation.Resource; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.ResponseBody; import lombok.Getter; import lombok.Setter; @Controller public class MainController { @GetMapping(value = "/info/string") @ResponseBody public String testString() { return "간단한 매핑 테스트용 메시지 입니다."; } @GetMapping(value = "/info/json") @ResponseBody public JForm testJson() { JForm jform = new JForm(); jform.message = "Json 테스트!"; return jform; } @GetMapping(value = "/info/page") public String test() { return "ftl형식의 테스트 입니다."; } @Getter @Setter public static class JForm { private String message; } }
@Controller
Controller로 지정시 사용할 어노테이션
@GetMapping("입력할 URL값")
Get방식의 Mapping URl을 지정할때 사용
@ResponseBody
응답값을 담을 Body 를 생성한다는 개념
- 실행 Run
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Spring + ELK
- Gateway
- rabbitmq
- 미래의나에게동기부여
- elasticSearch
- springcloud
- Kafka Connect
- producer
- 운동
- ACTUATOR
- 오늘저녁 삼겹살
- MSA
- consumer
- zipkin
- git
- UserService
- prometheus
- JWT
- github
- Logstash 활용
- 루틴기록
- Logstash to ElasticSearch
- 빅-오
- LoadBalancer
- config
- MariaDB
- docker
- 운동일기
- Feign
- kafka
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함