[SPRING] Spring MVC에서 컨트롤러와 액션 메소드를 기반으로 URL을 생성하려면 어떻게해야합니까?
SPRINGSpring MVC에서 컨트롤러와 액션 메소드를 기반으로 URL을 생성하려면 어떻게해야합니까?
나는 봄 MVC 3.0을 사용하고있다.
GuestBookController의 로그인 메소드를 가리키는 링크를 만들고자하는 guestbook.jsp 페이지가 있습니다.
이것은 대부분의 웹 프레임 워크가 처리하는 간단한 작업입니다 (예 : grails는 g : link 태그로 처리합니다). 그러나 공식 SpringMVC 문서에서는이 문서를 찾을 수 없었습니다.
그래서 내 머리를 긁적입니다 -이 기능은 일부 태그 라이브러리에 있습니까? 프레임 워크가 그것을 노출합니까? 이 기능을 사용하려면 프레임 워크를 확장해야합니까?
참고, URL (하드 코드는 분명하지만 약한 솔루션)을 하드 코딩하지 않고 컨트롤러 및 액션 이름을 기반으로 URL을 생성합니다.
최신 정보: Spring MVC는이 기능을 제공하지 않는다. JIRA 티켓이 있습니다. 여기에서 투표 할 수 있습니다. https://jira.springsource.org/browse/SPR-5779
해결법
-
==============================
1.짧은 대답은 '아니오'입니다. 현재 스프링 MVC로는이 작업을 수행 할 수 없습니다.
짧은 대답은 '아니오'입니다. 현재 스프링 MVC로는이 작업을 수행 할 수 없습니다.
Grails (Spring MVC를 사용하는)를 포함한 다른 프레임 워크에서이 작업을 수행 할 수 있기 때문에 부끄러운 일입니다.
이 기능을 추가하기위한 Spring 기능 요청에 대한 링크를 포함하는 토론을 여기에서보십시오 (투표하십시오).
-
==============================
2.Spring MVC는 JSP에서 표준 JSTL 태그를 사용하므로 :
Spring MVC는 JSP에서 표준 JSTL 태그를 사용하므로 :
<c:url value="/guestBook.html" var="guestBookLink" /> <a href="${guestBookLink}">Guest Book</a>
귀하의 컨트롤러 :
@RequestMapping(value = "/guestBook") public String handleGuestBook() { ... }
-
==============================
3.다음과 같이 @RequestMapping으로 로그인 메소드에 주석을 답니다.
다음과 같이 @RequestMapping으로 로그인 메소드에 주석을 답니다.
@Controller public class GuestBookController { ... @RequestMapping(value="/mycontextroot/login", method = RequestMethod.GET) public String login() { ... } ... }
그런 다음 JSP에서 다음과 같은 링크를 만듭니다.
<c:url var="loginlink" value="/mycontextroot/login.html"> </c:url> <a href="${loginlink}">Login</a>
여기서는 발송자 서블릿이 * .html URL을 찾고 있다고 가정합니다.
-
==============================
4.오랫동안 나는 CGLib 프록시를 사용하여 이와 같은 것을 구현하려고 생각했지만 너무 게을 렀다. Spring HATEOS 라이브러리가 내가 다른 사람들에게 위임하고 다양한 방식으로 프록시 방식으로 당신을 허용 할 것으로 보인다.
오랫동안 나는 CGLib 프록시를 사용하여 이와 같은 것을 구현하려고 생각했지만 너무 게을 렀다. Spring HATEOS 라이브러리가 내가 다른 사람들에게 위임하고 다양한 방식으로 프록시 방식으로 당신을 허용 할 것으로 보인다.
from https://stackoverflow.com/questions/6022980/how-can-i-create-a-url-based-on-controller-and-action-method-in-spring-mvc by cc-by-sa and MIT license
'SPRING' 카테고리의 다른 글
[SPRING] Spring Data @CreatedDate 주석이 작동하지 않습니다. (0) | 2019.02.17 |
---|---|
[SPRING] 추상 클래스의 주석을 상속합니까? (0) | 2019.02.17 |
[SPRING] Spring 요청 범위 빈 (0) | 2019.02.17 |
[SPRING] Javascript에서 모델 속성에 액세스하는 방법 (0) | 2019.02.17 |
[SPRING] 봄 보안, 후행 슬래시 및 URL의 점 (0) | 2019.02.17 |