spring mvc2

匿名 (未验证) 提交于 2019-12-02 23:49:02

web拦截方式

springconfig.xml

    <!--不拦截静态资源-->     <mvc:default-servlet-handler/>

/拦截所有不包含jsp ,包括今天资源,css,js,图片

web.xml

<!-- 配置SpringMVC前端控制器 -->     <servlet>         <servlet-name>spring_mvc_test</servlet-name>         <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>         <init-param>             <param-name>contextConfigLocation</param-name>             <param-value>classpath:spring/springconfig.xml</param-value>         </init-param>     </servlet>     <servlet-mapping>         <servlet-name>spring_mvc_test</servlet-name>         <url-pattern>/</url-pattern>     </servlet-mapping>

@RequestMapping

通过@RequestMapping注解可以定义不同的处理器映射规则。

@RequestMapping(“”)作用

标注在方法上:控制器访问的uri;

标注在类上:区别是那个功能,控制器访问的uri前增加一层路径

URL路径映射

@RequestMapping(value="item")或@RequestMapping("/item") value的值是数组,可以将多个url映射到同一个方法 /**  * 查询商品列表  * @return  */ @RequestMapping(value = { "itemList", "itemListAll" }) public ModelAndView queryItemList() {     // 查询商品数据     List<Item> list = this.itemService.queryItemList();      // 创建ModelAndView,设置逻辑视图名     ModelAndView mv = new ModelAndView("itemList");      // 把商品数据放到模型中     mv.addObject("itemList", list);     return mv; }

添加在类上面

在class上添加@RequestMapping(url)指定通用请求前缀, 限制此类下的所有方法请求url必须以请求前缀开头,可以使用此方法对url进行分类管理,如下图

此时需要进入queryItemList()方法的请求url为:

http://127.0.0.1:8080/springmvc-web2/item/itemList.action

或者

http://127.0.0.1:8080/springmvc-web2/item/itemListAll.action

请求方法限定

 

Controller方法返回值

返回ModelAndView

controller方法中定义ModelAndView对象并返回,对象中可添加model数据、指定view。

返回void

在Controller方法形参上可以定义request和response,使用request或response指定响应结果: 1、使用request转发页面,如下: request.getRequestDispatcher("页面路径").forward(request, response); request.getRequestDispatcher("/WEB-INF/jsp/success.jsp").forward(request, response);  2、可以通过response页面重定向: response.sendRedirect("url") response.sendRedirect("/springmvc-web2/itemEdit.action");  3、可以通过response指定响应结果,例如响应json数据如下: response.getWriter().print("{\"abc\":123}");

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!