달력

9

« 2020/9 »

2020. 2. 15. 10:02

@RequestBody Development/Spring



 

 

@RequestBody

·         HTTP POST 요청에 대해서만 처리합니다.

·         HTTP POST 요청에 대해 request body 있는 request message에서 값을 얻어와 매칭합니다.

·         RequestData 바로 Model이나 클래스로 매핑합니다. 이를테면 JSON 이나 XML같은 데이터를 적절한 messageConverter 읽을 사용하거나 POJO 형태의 데이터 전체로 받는 경우에 사용합니다.

·         HTTP Request Body(요청 몸체) Java Object 전달 받을 있습니다.

 

@PostMapping("/bbs/{index}")

@ResponseBody

public boolean deletePost(@PathVariable("index") int articleId) {

//...

return true;

}

 

 


'Development > Spring' 카테고리의 다른 글

JoinPoint 인터페이스의 메소드  (0) 2020.02.26
pom.xml  (0) 2020.02.20
@RequestBody  (0) 2020.02.15
Spring AOP 라이브러리 설치  (0) 2020.02.08
Maven 프로젝트 설정시 필수항목  (0) 2020.01.16
Index downloads are disabled, search results may be incomplete. 해결방법  (0) 2020.01.06
Posted by codedragon codedragon

댓글을 달아 주세요

2019. 7. 7. 01:30

@PathVariable Development/Spring



 

 

@PathVariable

·         @PathVariable 어노테이션을 이용하면 경로(path) 변수를 넣어주면 해당 변수를 요청메소드의 파라미터로 이용 있습니다.

·         HTTP 요청에 대한 요청 URL 파라미터(경로변수;구분자)형태로 사용할 있습니다.

·         요청시 마다 변하는 부분을 경로 변수로 처리할 있습니다.

·         REST API에서 값을 호출할 uri에서 구분자에 들어오는 값을 처리해야 주로 많이 사용합니다.

 

 

요청 URL

/bbs/{경로변수}

파라미터 처리

@PostMapping("/bbs/{경로변수}")

@PathVariable("경로변수") int 매개변수

 

@PostMapping("/bbs/{경로변수}")

@PathVariable int 매개변수(경로변수명과 동일)

 

 

 

// 경로에 변수를 넣어서 요청 처리

// 해당 변수는 요청 메소드의 파라미터로 이용되어 집니다.

@RequestMapping("/student/{studentId}")

public String getStudent(@PathVariable String studentId, Model model) {

// @PathVariable 어노테이션을 통해 경에 설정한 변수를 요청메소드의 파라미터로 사용하고 있습니다.

model.addAttribute("studentId", studentId);

return "student/studentView";

}

@RequestMapping("/student/{studentId}")

// 경로변수명의 값을 저장할 변수명이 경로변수명과 다를 경우 @PathVariable 경로 변수경을 꼭어준 원하는 변수명을 사용해 주면 됩니다.습니다.

public String getStudent(@PathVariable("index") String studentNumberId, Model model) {

 

model.addAttribute("studentId", studentNumberId);

return "student/studentView";

}

 

 

 

 

 

 

요청 URL

http://localhost:8080/bbs/13

파라미터 처리

@PostMapping("/bbs/{index}")

@PathVariable("index") int articleId

 

POST방식의 /bbs/{index} 같이 uri 요청이 들어오면  /bbs/13 URL 경로에서 경로변수에 해당하는 (13) 가져와서 articleId 매개변수에 저장하여 사용합니다.

@PostMapping("/bbs/{index}")

@ResponseBody

public boolean deletePost(@PathVariable("index") int articleId) {

//...

return true;

}

 

 

 

@Controller

@RequestMapping("/bbs")

public class BbsController{

@Autowired

private BbsService bbsService;

 

@RequestMapping(value = "/{index}", method = RequestMethod.POST)

public boolean deletePost(@PathVariable("index") int articleId) {

        //...

        return true;

}

}

 

 

 

 


'Development > Spring' 카테고리의 다른 글

Static Web Resource 처리  (0) 2019.08.09
"Spring Explorer" 뷰 오픈 하기  (0) 2019.07.27
@PathVariable  (0) 2019.07.07
STS4에서 Spring Legacy Project 생성하기  (0) 2019.06.15
eclipse/STS - Spring 환경구성  (0) 2019.06.06
Jackson Library 검색 및 설치  (0) 2019.05.18
Posted by codedragon codedragon

댓글을 달아 주세요



 

 

eclipse/STS - Spring 환경구성

 

우측 상단의 [Open Perspective] 아이콘 클릭 >> [Spring] 선택 >> [Open]


 

 

 

 

프로젝트 구조도 Spring 환경으로 변경되어집니다.


 


'Development > Spring' 카테고리의 다른 글

@PathVariable  (0) 2019.07.07
STS4에서 Spring Legacy Project 생성하기  (0) 2019.06.15
eclipse/STS - Spring 환경구성  (0) 2019.06.06
Jackson Library 검색 및 설치  (0) 2019.05.18
MyBatis3의 주요 컴포넌트 역할  (0) 2019.05.09
AOP 용어  (0) 2019.04.30
Posted by codedragon codedragon

댓글을 달아 주세요


 

 

RESTful Controller 어노테이션(Annotation)

·         Sprint MVC에서는 Client에서 전송한 XML이나 JSON 데이터를 Controller에서 Java Object 변환해서 받을 있는 기능(수신) 제공합니다.

·         Java  Object XML이나 JSON으로 변환해서 전송할 잇는 기능(송신) 제공하고 있습니다.

 

 

RESTful Controller 위한 핵심 어노테이션(Annotation)입니다.

Annotation

설명

@RequestBody

HTTP Request Body(요청 몸체) Java Object 전달 받을 있습니다.

 

https://codedragon.tistory.com/8929

@ResponseBody

Java Object HTTP Response Body(응답 몸체) 전송할 있습니다.

 

 

 


Posted by codedragon codedragon

댓글을 달아 주세요


 

uptodate

https://codedragon.tistory.com/8931

 

 

 

Jackson Library 검색 설치

 

http://mvnrepository.com/

 

"jackson mapper"으로 검색

jackson mapper


 

 

첫번째 항목 선택


 

 

버전번호 클릭


 

 

 

Maven항목의 dependency 정보 복사

http://mvnrepository.com/artifact/org.codehaus.jackson/jackson-mapper-asl/1.9.13


 

 

 

Project Explorer [Maven Dependencies]항목을 펼치면 JUnit라이브러리가 추가된 것을 확인할 있습니다.


 

 


Posted by codedragon codedragon

댓글을 달아 주세요

   

Spring Framework Reference Documentation

http://docs.spring.io/spring/docs/3.1.x/spring-framework-reference/html/

   

   

   

Posted by codedragon codedragon

댓글을 달아 주세요

   

   

Spring Framework

  • 자바 애플리케이션을 개발하기 위한 인프라스트럭처를 제공
  • 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크
  • Rod Johnson(로드 존슨) 창시
  • 동적인 웹 사이트를 개발하기 위한 여러 가지 서비스를 제공하고 있습니다.
  • 대한민국 공공기관의 웹 서비스 개발 시 사용을 권장하고 있는 전자정부 표준프레임워크의 기반 기술로서 쓰이고 있습니다.

   

   

Spring 홈페이지

http://spring.io/

   

   

주요 특징

  • 오픈 소스 프레임워크
  • 엔터프라이즈 어플리케이션 개발의 복잡성을 줄여주기 위한 목적
  • 의존성 주입(lightweight dependency injection)
  • 관점 지향 컨테이너(aspect-oriented container)

   

   

장점

  • 경량 컨테이너(light weight container) – 객체의 라이프 사이클 관리, JEE 구현을 위한 다양한 API제공,
  • DI (Dependency Injection) 지원
  • AOP (Aspect Oriented Programming) 지원
  • POJO (Plain Old Java Object) 지원-EJB 사용으로 수행되었던 모든 기능을 일반 POJO를 사용해서 가능
  • JDBC를 위한 다양한 API 지원
  • Transaction 처리를 위한 일관된 방법제공
  • 다양한 API와의 연동 지원

   

Posted by codedragon codedragon

댓글을 달아 주세요