整理一下关于我用到的springMVC的东西
1 执行过程
a 发送请求后被DispatchServlet截取
b DispatchServlet对请求URL进行解析,得到资源标识符(URL),然后根据资源标识符HandlerMapper,将请求映射到处理器HandlerExecutionChain
c DispatchServlet根据获得的Handler选择一个HandlerAdapter适配器处理
d Handler对数据处理后返回一个 ModelAndView()对象给DispatchServlet;
e DispathcherServlet 通过ViewResolver视图解析器将视图转化为真正的View
h . DispatcherServlet 通过 model 解析出 ModelAndView()中的参数进行解析最终展现出完整的 view 并返回给
客户端;
2 Restful风格的实现:如下,
controller中如下即可:主要是@PathVariable注解的使用,用于将请求URL中的模板变量映射到功能处理方法的参数上,即取出uri模板中的变量作为参数
@RequestMapping("/item/{itemId}")
public String getItem(@PathVariable Long itemId, Model model){
Item item = new Item(itemService.getTbItemById(itemId));
TbItemDesc desc = itemService.getTbItemDescById(itemId);
model.addAttribute("item", item);
model.addAttribute("itemDesc", desc);
return "item";
}
还需要在web.xml中的DispatcherServlet设置
<servlet>
<servlet-name>taotao-item-web</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/springmvc*.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>taotao-item-web</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
1 常用注解
@PathVarable
用于将请求URL中的模板变量映射到功能处理方法的参数上,即取出uri模板中的变量作为参数
@RequestParam
填写参数(如form表格中的数据)
常用属性 defaultValue 表示设置默认值,required 铜过boolean设置是否是必须要传入的参数,value 值表示接受的传入的参数类型。
@RequestMapping
请求url路径
常用属性 value,method,produces=MediaType.APPLICATION_JSON_UTF8_VALUE(jsonp时用到)