2010-10-11 37 views
7

Khi tôi nhìn vào mùa xuân FrameWork 3.0 Tôi thấy ví dụ đoạn mã sau:Spring MVC framework rất cơ bản Dispatcher câu hỏi

@RequestMapping("/index.dlp") 
public ModelAndView index(){ 
    logger.info("Return View"); 
    return new ModelAndView("index"); 
} 

Tùy chọn này không làm việc cho tôi. Chỉ khi tôi thay đổi mã theo cách sau:

@RequestMapping("/index.dlp") 
    public ModelAndView index(){ 
     logger.info("Return View"); 
     return new ModelAndView("index.jsp"); 
    } 

Nó hoạt động tốt. Ai có thể cho tôi biết tại sao?

Trả lời

9

Xem tên được giải quyết vào chế độ xem thực tế theo ViewResolver s.

Để tham khảo các trang JSP theo tên ngắn, bạn cần cung cấp InternalResourceViewResolver với prefixsuffix. Cấu hình như sau maps index để /WEB-INF/jsp/index.jsp:

<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> 
    <property name="prefix" value="/WEB-INF/jsp/"/> 
    <property name="suffix" value=".jsp"/> 
</bean> 

Xem thêm:

+2

Đây là những gì tôi thích: cả câu hỏi và câu trả lời rõ ràng, dễ hiểu và chính xác. Do đó +1 cho cả hai –

+0

Cảm ơn bạn. Hoàn hảo và điều gì sẽ xảy ra nếu tôi muốn tạo hai bean khác nhau cho/WEB-INF/jsp/và thứ hai cho/WEB-INF/forms/hoặc/WEB-INF/forms/jsp /? Cảm ơn bạn. Danny. –

+0

@danny: Sau đó, bạn có thể sử dụng '/ WEB-INF /' làm tiền tố và 'jsp/index' và' forms/index' làm tên chế độ xem. – axtavt

Các vấn đề liên quan