springmvc框架开发常用的注解总结
1、@Controller使用:表示表现层中的JavaBean被spring容器管理。
2、@requestMapping使用:
a) 在方法上: 标记url到请求方法的映射, 就相当于从一个url找到对应需要访问的controller层的方法
b) 用在类上: 窄化请求映射, 就是相当于在url上加了一层目录,防止你和你同事起的请求url地址重名
c) 限制请求的类型:
如果限制请求的类型, 访问的时候如果类型不匹配会报405错误
@RequestMapping(value="/list", method=RequestMethod.POST)
3、@RequestBody表示可以将前台传递过来的json格式的字符串自动封装到pojo对象中,但是要求json字符串中的key名称必须和pojo对象中的属性名称保持一致。
4、@ResponseBody表示可以将controller方法返回的pojo对象自动转换成json格式的字符串响应给浏览器。
5、@PathVariable表示使用RESTful风格发送URL请求时,专门用于接受占位符传递过来的值。
1 //使用RESTful风格传送参数 2 @RequestMapping("/item/{itemId}") 3 @ResponseBody //该注解是将返回的对象转成json格式的数据响应 4 //注解@PathVariable表示接受占位符传递过来的值 5 public TbItem queryItemById(@PathVariable Long itemId){ 6 return itemService.queryItemById(itemId); 7 }
6、@RequestParam的使用:
第一种方式:@RequestParam(defaultValue="1")表示设置controller方法上形参的默认值,通常用于在分页时设置当前页数的默认值为1,因为页面第一次访问时当前页数page变量的值null。
1 /** 2 * 分页查询广告内容表中的数据: 3 * @param page:当前页数 4 * @param rows:每页显示的记录数 5 * @param categoryId:默认展示内容类目为0的记录 6 * @return 7 */ 8 @RequestMapping("/query/list") 9 @ResponseBody 10 //@RequestParam(defaultValue="1")表示默认当前页数为第一页 11 public DatagridResult queryContentList(@RequestParam(defaultValue="1") Integer page,Integer rows,Long categoryId){ 12 13 return contentService.queryContentList(page, rows, categoryId); 14 }
第二种方式:@RequestParam(value="id",defaultValue="0")表示设置controller方法上形参变量的值是通过value属性的变量(id)赋值的,通过defaultValue属性设置默认值。

7、@Value("${imageServerURL}")表示引用资源文件中的值。

1 //提取常量: 2 @Value("${AD1_CATEGORY_ID}") 3 private Long AD1_CATEGORY_ID; 4 @Value("${AD1_HEIGHT}") 5 private Integer AD1_HEIGHT; 6 @Value("${AD1_HEIGHTB}") 7 private Integer AD1_HEIGHTB; 8 @Value("${AD1_WIDTH}") 9 private Integer AD1_WIDTH; 10 @Value("${AD1_WIDTHB}") 11 private Integer AD1_WIDTHB;
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?