SpringMVC中有哪些常用注解
SpringMVC中有哪些常用注解?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
MVC简介
MVC 全名是 Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写, 是一种用于设计创建 Web 应用程序表现层的模式。
Model(模型): 通常指的就是我们的数据模型。作用一般情况下用于封装数据。
View(视图): 通常指的就是我们的 jsp 或者 html。作用一般就是展示数据的。 通常视图是依据模型数据创建的。
Controller(控制器): 是应用程序中处理用户交互的部分。作用一般就是处理程序逻辑的。
SpringMVC简介
SpringMVC 是一种基于 Java 的实现 MVC 设计模型的请求驱动类型的轻量级 Web 框架,属于 Spring FrameWork 的后续产品,已经融合在 Spring Web Flow 里面。Spring 框架提供了构建 Web
应用程序的全功能 MVC 模块。使用 Spring 可插入的 MVC 架构,从而在使用 Spring 进行 WEB 开发时,可以选择使用 Spring 的 Spring MVC 框架或集成其他 MVC 开发框架。
SpringMVC 已经成为目前最主流的 MVC 框架之一,并且随着 Spring3.0 的发布,已成为最优秀的 MVC 框架。
SpringMVC中的常用注解
@GetMapping
作用:用于建立请求URL和处理请求方法之间的对应关系
可以出现在类上,请求URL的第一级访问目录
可以出现在方法上,请求URL的第二级访问目录
value:用于指定请求的URL。它和path属性的作用是一样的
method:用于指定请求的方式
params:用于指定限制请求参数的条件
@Controller //@RequestMapping("SpringMVC/") publicclassHelloController{ //请求方法为get请求参数必须有username @RequestMapping(value="/hello",method=RequestMethod.GET,params={"username"}) //@RequestMapping("/hello") publicStringsayHello(){ System.out.println("SpringMVChello~~~"); return"success"; } }
@RequestParam
作用:把请求中指定名称的参数给控制器中的形参赋值
value:请求参数的名称
required:请求参数中必须提供此参数。默认值:true,表示必须提供,如果不提供就报错。
@RequestMapping("/testRequestParam") //RequestParam--更名 //属性value=别名required=必须含有的参数 publicStringtestRequestParam(@RequestParam(value="username")Stringname){ System.out.printf(name); System.out.println("testRequestParam执行了~~~"); return"success"; }
@RequestBody
作用:用于获取请求体内容。直接使用得到key=value&key=vaule...结构的数据。get请求方式不适用
required:是否必须有请求体。当取值为true时,get请求会报错。如果取值为false,get请求得到是null。
@RequestMapping("/testRequestBody") //RequestBody获取请求体中的内容如:username=benshan&password=98989&money=200 publicStringtestRequestBody(@RequestBodyStringbody){ System.out.println("testRequestBody执行了~~~"); System.out.println(body); return"success"; }
@PathVariable
作用:用于绑定URL中的占位符。url中有/delete/{id},{id}就是占位符。
@RequestMapping("/testPathVariable/{id}") //PathVariable使用Restful风格,结构清晰,拓展方便 publicStringtestPathVariable(@PathVariable(value="id")Stringid){ System.out.println("testPathVariable~~~"); System.out.println(id); return"success"; }
@RequestHeader
作用:用于获取请求消息头
value 提供消息头名称
required:是否必须有此消息头
@RequestMapping("/testRequestHeader") //testRequestHeader获取请求头的值 publicStringtestRequestHeader(@RequestHeader(value="Accept")Stringheader){ System.out.println("testRequestHeader~~~"); System.out.println(header); return"success"; }
@CookieValue
作用:用于把指定cookie名称的值传入控制器方法参数
value:指定cookie的名称
required:是否必须有此cookie
@RequestMapping("/testCookieValue") //testRequestHeader获取请求头的值 publicStringtestCookieValue(@CookieValue(value="JSESSIONID")Stringcookie){ System.out.println("testCookieValue~~~"); System.out.println(cookie); return"success"; }
@ModelAttribute
作用:可以修饰方法和参数。出现在方法上,表示当前方法会在控制器的方法执行之前执行,先执行。出现在参数上,获取指定的数据给参数赋值
value 用于获取数据的key
@RequestMapping("/testModelAttribute") publicStringtestModelAttribute(){ System.out.println("testModelAttribute~~~"); return"success"; } @ModelAttribute //在控制器执行之前执行 publicvoidshowUser(){ System.out.println("showUser执行了~~~"); }
@SessionAttributes
作用:用于多次执行控制器方法间的参数共享
value 用于指定存入的属性名称
type:用于指定存入的数据类型
看完上述内容,你们掌握SpringMVC中有哪些常用注解的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注恰卡编程网行业资讯频道,感谢各位的阅读!
推荐阅读
-
Spring中Spring Boot与Spring MVC的核心概念是什么
-
SpringMVC对Restful风格的支持是怎样的
SpringMVC对Restful风格的支持是怎样的这篇文章给大家...
-
springmvc处理器映射器和适配器怎么配置
springmvc处理器映射器和适配器怎么配置这篇文章主要介绍“s...
-
SpringMVC执行过程是怎样的
-
springmvc中怎么利用@ModelAttribute获取表单提交的数据
这篇文章将为大家详细讲解有关springmvc中怎么利用@ModelAttribute获取表单提交的数据,文章内容质量较高,因此小...
-
SpringMVC中Controller类数据响应的方式
-
SpringMVC中怎么发送GET、POST请求
SpringMVC中怎么发送GET、POST请求,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这...
-
springmvc中怎么进行异常处理
springmvc中怎么进行异常处理,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你...
-
SpringMVC记录我遇到的坑_AOP注解无效,切面不执行的解决
SpringMVC记录我遇到的坑_AOP注解无效,切面不执行的解决,恰卡网带你了解更多相关信息。AOP注解无效,切面不执行...
-
使用springMVC通过Filter实现防止xss注入
使用springMVC通过Filter实现防止xss注入,恰卡网带你了解更多相关信息。springMVCFilter防止...