SpringMVC的注解
@RequestMapping
指定请求的路径
value:用于指定请求的url。它和path属性的作用是一样的。path:路径method:请求的方法。RequestMethod.GET,RequestMethod.POSTparams:指定请求中的参数。params = {"username"},请求参数必须有"accountName"headers:用于指定限制请求消息头的条件。headers ={"Accept"}表示请求头要有Accept参数
@RequestParam
把请求中的指定名称的参数传递给控制器中的形参赋值. testRequestParam(@RequestParam(name = "name",required = true) String username)
value:请求参数中的名称
required:请求参数中是否必须提供此参数,默认值是true,必须提供
@RequestBody注解
用于获取请求体的内容(注意:get方法不可以)saveUser(@RequestBody String body)
- required:是否必须有请求体,默认是true
@PathVariable
拥有绑定url中的占位符的。例如:url中有/delete/{id},{id}就是占位符.
@RequestMapping("/testPathVariable/{id}")
public String testPathVariable(@PathVariable("id") String id){}
- value:指定url中的占位符名称
@RequestHeader
获取请求头中的参数
@RequestMapping("/testRequestHeader")
public String testRequestHeader(@RequestHeader("Cookie") String header){
System.out.println(header);
return "success";
}
@CookieValue
用于获取指定cookie的名称的值
@RequestMapping("/testCookieValue")
public String testCookieValue(@CookieValue("JSESSIONID") String header){
System.out.println(header);
return "success";
}
@ModelAttribute
/*
ModelAttribute注解
作用
出现在方法上:表示当前方法会在控制器方法执行前执行。
出现在参数上:获取指定的数据给参数赋值。
应用场景
当提交表单数据不是完整的实体数据时,保证没有提交的字段使用数据库原来的数据。
*/
@RequestMapping("/testModelAttribute")
public String testModelAttribute(@ModelAttribute("abc") User user){
System.out.println(user);
return "success";
}
/**
* ModelAttribute注解
* 会在RequestMapping注解执行之前执行
*/
@ModelAttribute
public void showUser(String uname, Map<String,User> map){
User user = new User();
user.setUname(uname);
user.setAge(18);
user.setDate(new Date());
map.put("abc",user);
System.out.println("showUser方法执行了。。。"+user);
}
@SessionAttributes
把值存入session中
@Controller
@RequestMapping("sessionAttribute")
@SessionAttributes(names = {"name"})//把name的值存到session域对象中一份
public class SessionAttributeController {
/**
* 存值
* @param model
* @return
*/
@RequestMapping("testPut")
public String testPut(Model model){
String name = "张三";
model.addAttribute("name",name);
System.out.println("put:" + name);
return "success";
}
/**
* 取值
* @param modelMap
* @return
*/
@RequestMapping("testGet")
public String testGet(ModelMap modelMap){
String name = (String) modelMap.get("name");
System.out.println("get:" + name);
return "success";
}
/**
* 删除
* @param status
* @return
*/
@RequestMapping("testDel")
public String testDel(SessionStatus status){
status.setComplete();
System.out.println("delete session");
return "success";
}
}
@ResponseBody
自动将返回的对象转换成 JSON 格式
@RequestMapping("/testAjax")
@ResponseBody
public User testAjax(@RequestBody User user){
System.out.println("testAjax方法执行了。。。。");
System.out.println(user);
User resUser = new User();
resUser.setUsername("zjw");
resUser.setPassword("654321");
resUser.setAge(19);
return resUser;
}
@RequestMapping(value = "/testJson2", produces = {"application/json;charset=UTF-8"})表明当一个 HTTP 请求的 URL 匹配/testJson2且客户端期望的响应内容为 JSON 格式时,这个方法将被触发。这个方法的输出将是一个 JSON 格式的字符串,且以 UTF-8 编码。
@ResponseBody
@RequestMapping(value = "/testJson2" , produces = {"application/json;charset=UTF-8"})
public String testJson2() throws JsonProcessingException {
System.out.println("testJson2方法执行了。。。。");
User resUser = new User();
resUser.setUsername("zzz");
resUser.setPassword("654321");
resUser.setAge(19);
System.out.println(resUser);
ObjectMapper objectMapper = new ObjectMapper();
String userJson = objectMapper.writeValueAsString(resUser);
return userJson;
}
SpringMVC的注解的更多相关文章
- SpringMVC常用注解實例詳解3:@ResponseBody
我的開發環境框架: springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...
- SpringMVC常用注解實例詳解2:@ModelAttribute
我的開發環境框架: springmvc+spring+freemarker開發工具: springsource-tool-suite-2.9.0JDK版本: 1.6.0_29tomcat ...
- springMVC的注解详解
springmvc常用注解标签详解 1.@Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业 ...
- springmvc常用注解与类型转换
springmvc常用注解与类型转换 一:前置 spring -servlet.xml 注入 <!-- 启用spring mvc 注解 --> <context:annotation ...
- springMvc的注解注入方式
springMvc的注解注入方式 最近在看springMvc的源码,看到了该框架的注入注解的部分觉的有点吃力,可能还是对注解的方面的知识还认识的不够深刻,所以特意去学习注解方面的知识.由于本人也是抱着 ...
- SpringMVC全注解
SpringMVC全注解不是你们那么玩的 前言:忙了段时间,忙得要死要活,累了一段时间,累得死去活来. 偶尔看到很多零注解配置SpringMVC,其实没有根本的零注解. 1)工程图一张: web.xm ...
- SpringMVC常用注解@Controller,@Service,@repository,@Component
SpringMVC常用注解@Controller,@Service,@repository,@Component controller层使用@controller注解 @Controller 用于标记 ...
- 一 : springmvc常用注解
springmvc常用注解详解1.@Controller在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层 ...
- 04springMVC结构,mvc模式,spring-mvc流程,spring-mvc的第一个例子,三种handlerMapping,几种控制器,springmvc基于注解的开发,文件上传,拦截器,s
1. Spring-mvc介绍 1.1市面上流行的框架 Struts2(比较多) Springmvc(比较多而且属于上升的趋势) Struts1(即将被淘汰) 其他 1.2 spring-mv ...
- 转:springmvc常用注解标签详解
Spring5:@Autowired注解.@Resource注解和@Service注解 - IT·达人 - 博客园--这篇顺序渐进,讲得超级好--此人博客很不错http://www.cnblogs.c ...
随机推荐
- THUSC2024 & APIO2024 游记
第二次联赛以上的比赛. Day-n lxs 突然通知:从五月七日开始要去镇海中学集训(这也意味着 THUSC-APIO 中间出去玩的时间没了 ),很神秘.这是属于高二那一届考的联考连通块,不知道为什么 ...
- TortoiseGit 在windows11 中使用,建议升级到 2.13.0版本以后
- MySQL - 数据更新场景
Excel文件数据更新到表A的某两个字段 Excel文件中Sheet1页有两列,一列是序号,另一列是手机号.表A中有对应的序号列和手机号列. 1.首先,使用Navicat将Excel数据导入数据库,注 ...
- 2. 在Linux 当中安装 Nginx(13步) 下载&安装&启动(详细说明+附加详细截图说明)
2. 在Linux 当中安装 Nginx(13步) 下载&安装&启动(详细说明+附加详细截图说明) @ 目录 2. 在Linux 当中安装 Nginx(13步) 下载&安装&a ...
- DSP 28335 TTL SCI串口通讯 出错无法进入接收
项目上通过普通SCI串口在两个DSP28335之间进行通讯,一主一从,主机向从机发送指令,触发从机SCI接收中断,在中断中执行数据包判断和存储,数据处理和回复在主循环进行,未使用FIFO,轮询方式进行 ...
- 洛谷P3755 [CQOI2017] 老C的任务 题解
前言:这个分块和刚被撤下的不同,因为这个分块时间复杂度正确,能通过所有 hack. 题目传送门. 有没有什么可以不用离线都能解决问题的简单算法?答案是分块!! 60pts 首先遇到这个题目,先写一个比 ...
- php用token做登录认证
https://blog.csdn.net/qq_20869933/article/details/133201967 作用: PHP 使用token验证可有效的防止非法来源数据提交访问,增加数据操作 ...
- 在Vue 3中创建和使用FormData对象
在Vue 3中创建和使用FormData对象的具体步骤如下: 创建FormData对象:在Vue组件中,首先需要创建一个新的FormData对象.FormData是一个内置的JavaScript ...
- Java的数据类型详解
java的为强类型语言,所以要求变量的使用要严格符合规定,所有的变量都必须先定义后在使用: 什么是变量? 变量顾名思义,就是可变的量:是程序中最基本的存储单元,其要素要包括:变量名.变量类型和作用域: ...
- JMeter 通过 BeanShell 脚本处理入参和回参
入参:可以通过该方式动态生成入参参数,如时间参数,随机参数等. 操作:右键 HTTP Request - Add - Pre Processor - BeanShell PreProcessor im ...