springmvc注解

springMVC--参数绑定常用的注解

我们两清 提交于 2020-03-01 21:19:40
简介: handler method 参数绑定常用的注解,我们根据他们处理的Request的不同内容部分分为四类:(主要讲解常用类型) A、处理requet uri 部分(这里指uri template中variable,不含queryString部分)的注解: @PathVariable; B、处理request header部分的注解: @RequestHeader, @CookieValue; C、处理request body部分的注解:@RequestParam, @RequestBody; D、处理attribute类型是注解: @SessionAttributes, @ModelAttribute; 1、 @PathVariable 当使用@RequestMapping URI template 样式映射时, 即 someUrl/{paramId}, 这时的paramId可通过 @Pathvariable注解绑定它传过来的值到方法的参数上。 示例代码 @Controller @RequestMapping ( "/owners/{ownerId}" ) public class RelativePathUriTemplateController { @RequestMapping ( "/pets/{petId}" ) public void findPet(

【SSM】SSM之SpringMVC框架:SpringMVC的工作原理

情到浓时终转凉″ 提交于 2020-03-01 16:34:09
客户端发送的请求被DispatcherServlet捕获后其流程如下: 其大致流程如下: 1、用户发送请求至前端控制器DispatcherServlet。 2、DispatcherServlet收到请求调用HandlerMapping处理器映射器。 3、处理器映射器如果没有找到具体的处理器: 如果配置了<mvc:default-servlethandler/>,就调用默认的Servlet处理找到匹配的静态资源,如果没有找到就返回404页面; 如果没配置<mvc:default-servlethandler/>,直接返回404页面。 3、处理器映射器如果找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)一并返回给DispatcherServlet。 4、执行处理器拦截器的preHandle()方法(如果有的话)。 5、DispatcherServlet获得HandlerAdapter处理器适配器。 5、HandlerAdapter经过适配调用具体的处理器(Controller,也叫后端控制器)。 6、Controller执行完成返回ModelAndView前执行处理器拦截器的postHandle()方法(如果有的话)。 7、Controller执行完成返回ModelAndView。 8

SpringMVC模型数据解析

前提是你 提交于 2020-03-01 15:52:13
模型数据解析 我们通过JSP表单在客户端页面提交了一个对象信息,再将该对象信息显示在客户端页面上,这就是模型数据解析。 JSP的四大作用域对应的内置对象 pageContext、request、session、application 模型数据能够绑定到requeat、seesion、application三个对象中,下面代码会一一实现。在绑定模型数据之前,我们先写一个view.jsp,用来提交我们的模型数据。 模型数据的绑定是由ViewResolver来完成的,在实际开发中,我们需要先添加模型数据,再交给ViewResolver来绑定。 SpringMVC提供了以下几种方式添加模型数据 Map Model ModelAndView @SessionAttribute @ModelAttribute (1)将模型数据绑定到request对象 1、Map 业务方法 @RequestMapping ( "/map" ) public String map ( Map < String , User > map ) { User user = new User ( ) ; user . setId ( 1 L ) ; user . setName ( "张三" ) ; map . put ( "user" , user ) ; return "view" ; //将逻辑视图

SpringMVC ------处理模型数据

拈花ヽ惹草 提交于 2020-02-28 20:03:22
Spring MVC提供了以下几种途径输出模型数据: -- ModelAndView:处理方法返回值类型为ModelAndView时,方法体即可通过该对象添加模型数据。 --Map及Model:入参为org.springframework.ui.Model、org.springframework.ui.ModelMap或java.uti.Map时,处理方法返回时,Map中的数据会自动添加到模型中。 --@SessionAttributes:将模型中的某个属性暂存到HttpSession中,以便多个请求之间可以共享这个属性到Httpsession中,以便多个请求之间共享这个属性。 --@ModelAttribute :方法入参标注该注解后,入参的对象就会放到数据模型中。 @RequestMapping("/testModelAndView") public ModelAndView testModelAndView(){ String viewName = "success"; ModelAndView modelAndView = new ModelAndView(viewName); //添加模型数据到ModelAndView modelAndView.add("time",new Date()); return modelAndView; } 页面获取参数jsp页面 $

SpringMVC笔记(2)注解及参数

孤街浪徒 提交于 2020-02-28 05:46:59
添加访问路径 @RequestMapping("/ttt")本类的访问路径,本类中的方法使用路径/ttt来访问 @RequestMapping()中的参数 @RequestMapping(value={"/aaa","/bbb"})这样aaa.do和bbb.do都可以访问该方法 @RequestMapping(value="/fff/aaa",method=RequestMethod.POST),请求方式必须是post @RequestMapping(value="/fff/bbb",params=“id”)请求必须有id参数没有的话404 @RequestMapping(value="/fff/ccc",params={“id”,“name”,“img”})请求必须有id,name,img,没有访问不到404 @RequestMapping(value="/fff/ddd",headers=“cookie”)请求头里有cookie 方法中的参数 /注意JavaBean对象的get,set方法要标准 参数的注解形式 @RequestMapping("/aaa") public String f1( @RequestParam("xxx") String name, @RequestParam(name="yyy",required=false,defaultValue="22")

SpringMVC

坚强是说给别人听的谎言 提交于 2020-02-27 03:03:30
SpringMVC 狂神说java SpringMVC视频B站地址 文章目录 SpringMVC 1. 什么是MVC 1.1 回顾servlet 1.2 MVC框架要做哪些事 2. 初识springMVC 2.1 为什么要学springMVC 2.2 spring MVC原理:(重点) 2.3 HelloSpringMVC 2.4 注解版 HelloSpringMVC 3. RestFul 风格 3.1 功能 3.2 对比传统方式 4. 结果跳转方式 4.1 通过SpringMVC实现转发与重定向 5. 数据处理 5.1 前端参数 5.2 数据显示到前端 5.3 乱码问题 6. JSON 6.1 什么是JSON 6.2 JSON语法格式 6.3 使用Jackson 6.4 使用FastJson 7. 整合SSM 7.1 数据库环境 7.2 环境搭建 7.3 Mybatis层 1. 数据库配置文件 database.properties 2. idea关联数据库 3.实体类 4. Mybatis核心配置文件 5. Dao层BookMapper接口 6. BookMapper接口对应的Mapper.xml文件 7. Service层接口 8. Service层 接口实现类 7.4 Spring层 1.spring整合mybatis配置文件 spring-dao.xml 2.

SpringMVC异常处理

时间秒杀一切 提交于 2020-02-26 13:32:26
SpringMVC异常处理 在项目中怎样处理出现的异常,在每一个可能出现异常的地方都写代码捕捉异常?这显然是不合理的,当项目越来越大是也是不可维护的。那么怎样保证我们处理异常的代码精简且便于维护呢?这就是本篇要讲的内容—>异常处理。 在Spring MVC中我们能够通过下面2中途径来对异常进行集中处理: 一.继承HandlerExceptionResolver接口实现自己的处理方法,如: public class MyHandlerExceptionResolver implements HandlerExceptionResolver { @Override public ModelAndView resolveException(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) { //加入自己的异常处理逻辑,如日志记录等 // TODO Auto-generated method stub return new ModelAndView("exception"); } } 然后在项目的配置文件里加入: <bean id="exceptionResolver" class="所在包名.MyHandlerExceptionResolver"/>

SpringMVC拦截器与异常处理

*爱你&永不变心* 提交于 2020-02-26 13:25:43
点击查看上一章 在我们SpringMVC中也可以使用拦截器对用户的请求进行拦截,用户可以自定义拦截器来实现特定的功能。自定义拦截器必须要实现 HandlerInterceptor 接口 package com.spring.mvc.interceptor; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.servlet.HandlerInterceptor; import org.springframework.web.servlet.ModelAndView; /** * @author:SimpleWu * @to:拦截器执行流程:preHandle - 目标方法 - postHandle -渲染视图 - afterCompletion */ public class MyInterceptor implements HandlerInterceptor{ /** * 渲染视图之后被调用 * 释放资源 */ @Override public void afterCompletion(HttpServletRequest arg0, HttpServletResponse arg1,

<SpringMvc>入门二 常用注解

戏子无情 提交于 2020-02-26 03:06:12
1.@RequestMapping @Target({ElementType.METHOD, ElementType.TYPE}) @Retention(RetentionPolicy.RUNTIME) @Documented @Mapping public @interface RequestMapping { String name() default ""; @AliasFor("path") String[] value() default {}; @AliasFor("value") String[] path() default {}; RequestMethod[] method() default {}; String[] params() default {}; String[] headers() default {}; String[] consumes() default {}; String[] produces() default {}; } 可以看出requestMapping可以作用在类和方法上 1. value和path 是一样的,并且默认值就是路径,下面是测试,请求成功 <a href="/hello/sayHello" >入门程序</a> 2. method ,规定了该方法的请求类型,如果写了,前端的请求类型一致才能访问到该方法 如果不写

springMVC学习笔记--初识springMVC

情到浓时终转凉″ 提交于 2020-02-25 19:55:12
前一段时间由于项目的需要,接触了springMVC(这里主要是讲3.1版,以下内容也是围绕这个版本展开),发觉其MVC模式真的很强大,也简单易用,完全是基于注解实现其优雅的路径配置的。想想以前接手的项目,是用原生的servlet,一个功能块就得在web.xml上配置一个servlet信息,那个蛋疼,现在那个项目就单配置文件都快达到1万行了。当然,现在是SSH横行的年代,strust2.0也是许多企业的选择,是一个稳定、成熟的框架。但是我们选择springMVC是因为其具有几个突出的特性:1.轻量、2控制反转、3.面向切面、4.容器。这里可以参考这篇文章: http://developer.51cto.com/art/200610/33580.htm 1 springMVC简介 1.1 度娘有话 度娘说:SpringMVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面。Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,可以选择是使用内置的 Spring Web 框架还可以是 Struts 这样的 Web 框架。通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages(JSP)技术、Velocity、Tiles、iText