티스토리 뷰

웹 어플리케이션을 개발하는 방식 2가지

 

1️⃣ SOAP ( Service Oriented Application Programming )

  • 전통적인 개발 방식
  • 요청: GET방식 : 조회용 ( select ) ⇒ @GetMapping
              POST방식 : 수정용 (insert, delete, update ) ⇒ @PostMapping
  • 응답: html / jsp ⇒ 웹 브라우저가 필요
                              화면이 필요 (일반 유저가 보는)
  • 서버에 데이터 전달 방법: query string
    예> http://localhost:8090/app/addMember?name=hong&age=20

SOAP은 서로 다른 언어의 플랫폼에서 빌드된 어플리케이션이 서로 통신할 수 있도록 설꼐된 최초의 표준 프로토콜이다.
SOAP의 장점은 기존의 원격 기술대비 프록시&방화벽의 구애를 받지 않고, 플랫폼이나 프로그램이 언어에 있어서 독립적이고, 분산처리 환경에서 사용하기 적합하고, 웹 서비스 표준이 잘 정립되어 있다는 것이다.
반면, 단점은 REST에 비해 상대적으로 무거우며 속도가 느리다는 것이다.



 

 

 

2️⃣ REST ( REpresentational State Transfer )

  • 포털 사이트가 주도 한 개발 방식
  • 요청: GET방식 : 조회용 ( select ) ⇒ @GetMapping
              POST방식 : 수정용 (insert, delete, update ) ⇒ @PostMapping
              PUT방식 : 수정용 ( update ) ⇒ @PutMapping
              DELETE방식 : 삭제용 ( delete ) ⇒ @DeleteMapping
  • 아직까지 html은 GET방식과 POST방식만 지원된다.
    PUT방식과 DELETE방식은 도구(curl, postman) 및 라이브러리(Swagger API) 를 이용해야 된다.
  • 응답: JSON (XML) ⇒ 웹 브라우저가 불필요
                                  화면이 불필요 ★
                                  ⇒ 다양한 디바이스(핸드폰,테블릿)가 있고 JSON 처리가 가능하다.
  • 서버에 데이터 전달 방법 ( URL에 포함 ) ⇒ ? 가 없음
    예> http://localhost:8090/app/name/hong/age/20

 

 


 

 

@GetMapping

@PostMapping

@PutMapping

@DeleteMapping

 

 


 

3️⃣ Swagger 사용방법

1. 의존성 설정

<dependency>			
	<groupId>io.springfox</groupId>			
	<artifactId>springfox-swagger-ui</artifactId>			
	<version>2.9.2</version>		
</dependency>		
<!-- https://mvnrepository.com/artifact/io.springfox/springfox-swagger2 -->		
<dependency>			
	<groupId>io.springfox</groupId>			
	<artifactId>springfox-swagger2</artifactId>			
	<version>2.9.2</version>		
</dependency>

 

 

2. SwaggerConfig.java

@Configuration
@EnableSwagger2
public class SwaggerConfig {

	@Bean
	public Docket api() {
		return new Docket(DocumentationType.SWAGGER_2)
				.select()
				.apis(RequestHandlerSelectors
						.basePackage("컨트롤러패키지명"))
				.paths(PathSelectors.any())
				.build();
	}
	
}

 

 

 

3. 서버 실행후 Swagger(dashboard) 요청
    http://localhost:8090/app/swagger-ui.html

 

 

 

DTO와 List 추가

'Framework > SPRING BOOT' 카테고리의 다른 글

Thymeleaf  (0) 2023.09.26
@PathVariable  (0) 2023.09.26
@Value  (0) 2023.09.25
springboot에서 설정 정보 파일  (0) 2023.09.25
HandlerInterceptor  (0) 2023.09.25
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2024/05   »
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
글 보관함