스프링 웹 MVC
디스패처 서블릿
모든 요청 처리 활동을 조정하는 전면 컨트롤러입니다. 웹 인프라 빈에 위임하고 사용자의 웹 구성 요소를 호출합니다. Spring Boot에 의해 자동으로 생성되고 구성됩니다. Spring Boot를 사용하지 않는 경우 ViewResolver 빈 정의와 @EnableWebMvc 주석을 추가해야 합니다.
제어 장치
특정 HTTP GET 요청을 처리할 때 실행할 메서드를 Spring에 알리기 위해 @Controller로 컨트롤러에 주석을 달고 @RequestMapping 또는 @GetMapping으로 컨트롤러의 메서드에 주석을 답니다. 컨트롤러는 일반적으로 논리적 보기 이름을 문자열로 반환합니다.
다음 예에서 http://localhost:8080/을 호출하면 index.html로 리디렉션되고 http://localhost:8080/hello을 호출하면 welcome.html로 리디렉션됩니다.
@Controller
public class HelloController {
@RequestMapping("/")
public String home() {
return "index";
}
@RequestMapping("/hello")
public String hi(Model model) {
model.addAttribute("name", "Spring Boot");
return "welcome";
}
@RequestMapping("/showAccount")
public String accountDetails(@RequestParam("entityId") long id, Model model) {
...
}
@GetMapping("/accounts/{accountId}")
public String show(@PathVariable("accountId") long accountId, Model model) {
...
}
}
컨트롤러 메서드 매개변수는 Spring에서 제공합니다. 앞의 예에서 모델 매개변수는 데이터를 뷰로 보내는 데 사용됩니다. 요청에 HttpServletRequest, 세션 액세스에 HttpSession, 인증된 사용자에 Principal 등을 사용할 수 있습니다. 참조Handler Methods Documentation
@RequestParam 주석을 사용하여 요청에서 매개변수를 추출합니다. 위의 예에서 http://localhost:8080/showAccount?entityId=1 을 호출하는 entityId 매개변수를 보낼 수 있습니다.
요청 URL에서 값을 추출하려면 {...} 자리 표시자와 @PathVariable 주석을 사용할 수 있습니다. 위의 예에서 http://localhost:8080/accounts/1 을 호출하는 accountId 매개변수를 보낼 수 있습니다. 이 경우 @PathVariable 뒤의 주석 값("accountId")은 매개변수 이름과 일치하므로 불필요합니다.
보다
보기는 웹 출력을 렌더링합니다. HTML 또는 JSP 파일일 수 있습니다. ViewResolvers는 컨트롤러가 반환한 보기 이름을 기반으로 보기를 선택합니다. Spring Boot에서는 ViewResolver(Mustache, Thymeleaf, Groovy 등)에 대한 종속성을 추가하기만 하면 됩니다.
예를 들어 다음은 콧수염에 대한 종속성입니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mustache</artifactId>
</dependency>
이것은 welcome.html 파일입니다.
<!DOCTYPE html>
<html lang="en">
<body>
<div>Hello {{name}}</div>
</body>
</html>
컨트롤러에 따르면 모델에서 이름 속성을 가져와 "Hello Spring Boot"를 인쇄합니다.
Reference
이 문제에 관하여(스프링 웹 MVC), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/eidher/spring-web-mvc-3adg
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
특정 HTTP GET 요청을 처리할 때 실행할 메서드를 Spring에 알리기 위해 @Controller로 컨트롤러에 주석을 달고 @RequestMapping 또는 @GetMapping으로 컨트롤러의 메서드에 주석을 답니다. 컨트롤러는 일반적으로 논리적 보기 이름을 문자열로 반환합니다.
다음 예에서 http://localhost:8080/을 호출하면 index.html로 리디렉션되고 http://localhost:8080/hello을 호출하면 welcome.html로 리디렉션됩니다.
@Controller
public class HelloController {
@RequestMapping("/")
public String home() {
return "index";
}
@RequestMapping("/hello")
public String hi(Model model) {
model.addAttribute("name", "Spring Boot");
return "welcome";
}
@RequestMapping("/showAccount")
public String accountDetails(@RequestParam("entityId") long id, Model model) {
...
}
@GetMapping("/accounts/{accountId}")
public String show(@PathVariable("accountId") long accountId, Model model) {
...
}
}
컨트롤러 메서드 매개변수는 Spring에서 제공합니다. 앞의 예에서 모델 매개변수는 데이터를 뷰로 보내는 데 사용됩니다. 요청에 HttpServletRequest, 세션 액세스에 HttpSession, 인증된 사용자에 Principal 등을 사용할 수 있습니다. 참조Handler Methods Documentation
@RequestParam 주석을 사용하여 요청에서 매개변수를 추출합니다. 위의 예에서 http://localhost:8080/showAccount?entityId=1 을 호출하는 entityId 매개변수를 보낼 수 있습니다.
요청 URL에서 값을 추출하려면 {...} 자리 표시자와 @PathVariable 주석을 사용할 수 있습니다. 위의 예에서 http://localhost:8080/accounts/1 을 호출하는 accountId 매개변수를 보낼 수 있습니다. 이 경우 @PathVariable 뒤의 주석 값("accountId")은 매개변수 이름과 일치하므로 불필요합니다.
보다
보기는 웹 출력을 렌더링합니다. HTML 또는 JSP 파일일 수 있습니다. ViewResolvers는 컨트롤러가 반환한 보기 이름을 기반으로 보기를 선택합니다. Spring Boot에서는 ViewResolver(Mustache, Thymeleaf, Groovy 등)에 대한 종속성을 추가하기만 하면 됩니다.
예를 들어 다음은 콧수염에 대한 종속성입니다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mustache</artifactId>
</dependency>
이것은 welcome.html 파일입니다.
<!DOCTYPE html>
<html lang="en">
<body>
<div>Hello {{name}}</div>
</body>
</html>
컨트롤러에 따르면 모델에서 이름 속성을 가져와 "Hello Spring Boot"를 인쇄합니다.
Reference
이 문제에 관하여(스프링 웹 MVC), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/eidher/spring-web-mvc-3adg
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-mustache</artifactId>
</dependency>
<!DOCTYPE html>
<html lang="en">
<body>
<div>Hello {{name}}</div>
</body>
</html>
Reference
이 문제에 관하여(스프링 웹 MVC), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/eidher/spring-web-mvc-3adg텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)