title: PathVariable和RequestParam注解的使用 date: 2017.07.24 00:15 categories:
- 技术博客 tags:
- 框架使用
- SpringMVC
本着不重复造轮子的原则,在SpringMVC中的这两个注解用法我不再展开,直接给出一同行的博客链接:@PathVariable和@RequestParam的区别。
他这篇博客写的一方面是全,将常用的参数绑定注解(包括我自己常用的@ModelAttribute)都放到一起简介了一次,一方面是结构比较清晰,包括了用法、demo、讲解,所以适合有需要的程序员用来参考。
既然用法与简单的理解都有了,那我就来扯点儿闲话。
Spring家的源码,主观上讲,同时也是客观事实:确实是清晰,可读性极强,我虽然只看过部分,但每次都会让我有种读起来顺畅无比的感觉。
原因有很多,从框架设计理念角度看,必然有其优秀的基因,比如经典的AOP、IOC,Spring在这点上的口碑人尽皆知,其次从代码的撰写上,这个角度也是大多数初中级程序员能够实际学习的地方,那就是规范问题。这也是程序员工程化能力的第一道关口。
阿里在几个月前放出了阿里Java编码规范可下载电子书:《阿里巴巴Java开发手册》,通过这个材料,我觉得起码对于Java程序员是降低了提升自己的门槛,很全很实用,毕竟阿里是Java大户。
所以多的不谈,都在PDF材料里,只要按照这样的风格规范养成自己的编码习惯,最起码代码质量有了基本保障。
而在Spring中,能够表现其规范之魅力的地方之一,最为明显的我认为是命名,从类、方法到变量,从来没有无意义的东西出现,以本篇文字的几个注解为例:
@PathVariable,翻译过来是路径变量的意思,从请求的URL或者URI上带动态的参数过来,再到请求的目标方法中进行变量的逻辑处理@RequestParam,翻译为请求参数,可以理解为req对象中带过来的参数,通常也用在参数较少的情况(不用对象封装)@ModelAttribute,翻译为model中的属性,而Spring中的model其实也就是框架使用的一个bean,常用于Java中模型与前端对象名字不完全等同的情形
因而,掌握了框架基本用法的基础上,对于他的注解用法从名字上就能达到查API的效果,这就是规范的魅力。
小结
- 写代码不一定要飘逸,但最好要规范
- 使用框架先会用再去深究其细节