달력

12

« 2019/12 »

  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  •  
  •  
  •  
  •  
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

댓글을 달아 주세요