Sangwon Coding
Spring Boot - RestAPI 본문
REST 의 개념
- HTTP 프로토콜에 있는 Method를 활용한 아키텍처 스타일 이다.
- HTTP Method 를 통해서 Resource를 처리 한다.
- CRUD 를 통한 Resource 조작을 할 때 사용 한다.
GetController.java
package com.example.study.controller;
import com.example.study.model.SearchParam;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api") // localhost:8080/api
public class GetController {
@RequestMapping(method = RequestMethod.GET, path = "/getMethod") // localhost:8080/api/getMethod
public String getRequest() {
return "Hi getMethod";
}
@GetMapping("/getParameter") // localhost:8080/api/getParameter?id=1234&password=abcd
public String getParameter(@RequestParam String id, @RequestParam(name = "password") String pwd) {
String password = "bbbb";
System.out.println("id : " + id);
System.out.println("pwd : " + pwd);
return id + pwd;
}
// localhost:8080/api/multiParameter?account=abcd&email=study@gamil.com&page=10
@GetMapping("/getMultiParameter")
public SearchParam getMultiParameter(SearchParam searchParam) {
System.out.println(searchParam.getAccount());
System.out.println(searchParam.getEmail());
System.out.println(searchParam.getPage());
// {"account" : "" : "email" : "", "page" : 0}
return searchParam;
}
}
PostController.java
package com.example.study.controller;
import com.example.study.model.SearchParam;
import org.springframework.web.bind.annotation.*;
@RestController
@RequestMapping("/api") // localhost:8080/api
public class PostController {
// HTML <Form>
// ajax 검색
// http post body -> data
// json, xml, multipart-form / text-plain
@PostMapping(value = "/postMethod")
public SearchParam postMethod(@RequestBody SearchParam searchParam){
return searchParam;
}
@PutMapping("/putMethod")
public void put(){
}
@PatchMapping("/patchMethod")
public void patch(){
}
}
SearchParam.java
package com.example.study.model;
public class SearchParam {
private String account;
private String email;
private int page;
// {"account" : "" : "email" : "", "page" : 0}
public String getAccount() {
return account;
}
public void setAccount(String account) {
this.account = account;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public int getPage() {
return page;
}
public void setPage(int page) {
this.page = page;
}
}
'Spring > Spring Boot (어드민 페이지)' 카테고리의 다른 글
Spring Boot - 어드민 프로젝트를 위한 ERD 설계 (0) | 2019.11.22 |
---|---|
Spring Boot - JPA 연관관계 설정 (1) | 2019.11.22 |
Spring Boot - JPA를 이용한 CRUD (0) | 2019.11.21 |
Spring Boot - Entity, Repository (0) | 2019.11.21 |
Spring Boot - Lombok, JPA (0) | 2019.11.19 |
Comments