标签:
1, 配置注解映射器和适配器。
<!--注解映射器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"/> <!--注解适配器 --> <bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"/>
但是在实际的开发中,对注解的适配器和映射器的配置经常用到注解驱动:
使用 mvc:annotation-driven代替上边注解映射器和注解适配器配置
mvc:annotation-driven默认加载很多的参数绑定方法,
比如json转换解析器就默认加载了,如果使用mvc:annotation-driven不用配置上边的RequestMappingHandlerMapping和RequestMappingHandlerAdapter
实际开发时使用mvc:annotation-driven
2,开发注解Handler
使用注解的映射器和注解的适配器(注解的映射器和注解的适配器必须配对使用)。
package cn.itcast.ssm.controller; import java.util.ArrayList; import java.util.List; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; import cn.itcast.ssm.po.Items; /** * @author Administrator * */ @Controller public class ItemsController3 { //商品查询列表 //@RequestMapping实现 对queryItems方法和url进行映射,一个方法对应一个url //一般建议将url和方法写成一样 @RequestMapping("/queryItems") public ModelAndView queryItems()throws Exception{ //调用service查找 数据库,查询商品列表,这里使用静态数据模拟 List<Items> itemsList = new ArrayList<Items>(); //向list中填充静态数据 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); //指定视图 //下边的路径,如果在视图解析器中配置jsp路径的前缀和jsp路径的后缀,修改为 //modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp"); //上边的路径配置可以不在程序中指定jsp路径的前缀和jsp路径的后缀 modelAndView.setViewName("/WEB-INF/jsp/items/itemsList.jsp"); return modelAndView; } }
3,在spring容器中加载Handler
对于注解的Handler可以单个配置,实际开发中建议使用组件扫描,自动扫描。
<bean class="cn.itcast.ssm.controller.ItemsController3" />
<!-- 可以扫描controller、service、...
这里让扫描controller,指定controller的包
-->
<context:component-scan base-package="cn.itcast.ssm.controller"></context:component-scan>
标签:
原文地址:http://www.cnblogs.com/liusc0424/p/4639698.html