spring_配置處理器物件、處理器對映器、處理器介面卡、檢視解析器
阿新 • • 發佈:2019-05-22
建立spring配置檔案:application-context.xml。
建立處理器類
package com.lanou.demo.controller;public class BookController implements Controller { @Override public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception { }
}
public class OrderServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("OrderServlet.doGet"); } }
public class UserHandller implements HttpRequestHandler { @Override public void handleRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("UserHandller.handleRequest"); } }
1.配置處理器物件:
第一種:
<bean id="/book.do" class="com.lanou.demo.controller.BookController"/>
第二種:
<bean id="book1" class="com.lanou.demo.controller.BookController"/> <bean id="orderServlet" class="com.lanou.demo.controller.OrderServlet"/> <bean id="userHandller" class="com.lanou.demo.controller.UserHandller"/> <bean id="controller" class="com.lanou.demo.controller.CategoryController"/>
2.配置處理器對映器:HandlerMapping
第一種:這個處理器對映是根據Handler的bean的名字(也就是id)來進行對映的
<bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/>
第二種:簡單Url對映
<bean class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping"> <property name="mappings"> <props> <prop key="/book/1">book1</prop> <prop key="/book/2">book1</prop> <prop key="/order">orderServlet</prop> <prop key="/user">userHandller</prop> </props> </property> </bean>
第三種:註解形式:
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>
配合Controller層的方法上註解@RequestMapping("/url")使用.
3.配置處理器介面卡:HandlerAdapter.
<!--處理Servlet實現類型別的Handller 3--> <bean class="org.springframework.web.servlet.handler.SimpleServletHandlerAdapter"/> <!--處理Controller實現型別的Handler 1--> <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/>
<!--處理HttpRequestHandller實現類型別的Handller 4--> <bean class="org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter"/>
<!--處理RequestMapping註解形式的Handller 2-->
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
4.配置檢視解析器:
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" id="viewResolver"> <!--檢視的字首--> <property name="prefix" value="/檢視字首(即前端網頁存放的位置)/"/> <!--檢視的字尾--> <property name="suffix" value="檢視字尾(即網頁型別:.jsp或.html)"/> </bean>
&n