【SSM-SpringMVC框架】注解的处理器适配器和映射器

来源:互联网 发布:python和php速度 编辑:程序博客网 时间:2024/04/26 16:38

1.Controller代码:

    

@Controllerpublic class ItemList3  {@RequestMapping("/queryItems.action")public ModelAndView queryItems() throws Exception{//商品列表List<Items> itemsList = new ArrayList<Items>();Items items_1 = new Items();items_1.setName("联想笔记本");items_1.setPrice(6000f);items_1.setDetail("ThinkPad T430 联想笔记本电脑!");Items items_2 = new Items();items_2.setName("苹果手机");items_2.setPrice(5000f);items_2.setDetail("iphone6苹果手机!");itemsList.add(items_1);itemsList.add(items_2);//创建modelAndView准备填充数据、设置视图ModelAndView modelAndView = new ModelAndView();//填充数据,,相当于request.setAttribut(); 在jsp页面中通过itemsList取数据modelAndView.addObject("itemsList", itemsList);//视图modelAndView.setViewName("/itemsList.jsp");return modelAndView;}}

 

 2.向spring容器中加载Handler:(组件扫描器)

    使用组件扫描器省去了向spring容器中配置每个controller的繁琐。使用<context:component-scan>,自动扫描带有@controller标记的Handler控制器类。

  

<!-- 扫描指定包的Handler,不用一个一个将Handler布置到spring容器中 --><context:component-scan base-package="cn.edu.hpu.springmvc.controller"></context:component-scan>

 

 3.注解的处理器映射器(HandlerMapping):

   注解式处理器映射器对标有@RequestMapping的方法进行映射,根据RequestMapping定义的url,匹配RequestMapping标记的方法,若匹配成功,则HandlerMethod给前端控制器,HandlerMethod对象中封装url对应的方法Method。

   

<!--注解映射器 --><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/>

 4.注解的处理器适配器(HandlerAdapter):

   注解式的处理器适配器,对标有@RequestMapping的方法进行适配。

  

<!--注解适配器 --><bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>

 


  5.<mvc:annotation-driven>

   

<!-- 使用 mvc:annotation-driven代替上边注解映射器和注解适配器配置mvc:annotation-driven默认加载很多的参数绑定方法,比如json转换解析器就默认加载了,如果使用mvc:annotation-driven不用配置上边的RequestMappingHandlerMapping和RequestMappingHandlerAdapter实际开发时使用mvc:annotation-driven --> <mvc:annotation-driven></mvc:annotation-driven>

 




0 0