映射器:
在spring3.1之前用的是:
org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping.class
在spring3.2之后用的是:
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping.class
适配器:
在Spring3.1之前用的是:
org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.class
在spring3.1之后用的是:
org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.class
1.配置适配器和映射器
<!-- 配置注解映射器和适配器 -->
<!-- 注解映射器
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping"></bean>
注解适配器
<bean class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter"></bean>
-->
<!-- 使用mvc:annotation-driver代替上面的配置,
同时mvc:annotataion-driver默认加载了很多参数绑定方法
比如:json转换加载器会默认加载。 推荐使用。
-->
<mvc:annotation-driven></mvc:annotation-driven>
2.编写controller
@Controller
public class zhujieItemsController {
//商品查询列表
@RequestMapping("/queryItems44")
public ModelAndView queryItems()throws Exception{
List<Items>itemsList=new ArrayList<Items>();
//向list添加数据
Items items_1=new Items();
items_1.setName("电脑444");
items_1.setPrice(6000f);
items_1.setDetail("联想笔记本壳444。");
itemsList.add(items_1);
Items items_2=new Items();
items_2.setName("手机444");
items_2.setPrice(7000f);
items_2.setDetail("联想手机444。");
itemsList.add(items_2);
Items items_3=new Items();
items_3.setName("鼠标344");
items_3.setPrice(10000f);
items_3.setDetail("联想鼠标44。");
itemsList.add(items_3);
//返回ModelAndView
ModelAndView modelAndView=new ModelAndView();
//相当于reques的setAtrribute,在jsp页面中通过itemsList来获取数据
modelAndView.addObject("itemsList", itemsList);
//制定视图
modelAndView.setViewName("/WEB-INF/JSP/itemsList.jsp");
return modelAndView;
}
}
3.注入controller
<!-- 注解handler的配置 -->
<!-- 可单个配置也可扫描配置
<bean class="zhujieItemsController"/> -->
<!-- 组建扫描 ,扫描组建可以扫描controller、service-->
<context:component-scan base-package="/"></context:component-scan>