1. @Comment注解
我们在zull的token拦截部分用到了一个@Comment注解,这里展开说一下。
spring2.5为我们引入了组件自动扫描机制,它可以在classPath路径底下寻找标注了@Component、@Service、@RestController、@Mapper注解的类,并把这些类纳入进spring容器中管理。它的作用和在xml文件中使用bean节点配置组件是一样的。
@Service用于标注业务层组件、
@RestController用于标注控制层组件
@Mapper用于标注数据访问组件,即DAO组件。
而@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
2. dependencies VS dependencyManagement
我们可以看到父项目中的pom文件的依赖分成了两个部分,如下:
其中区别在于放在里面的依赖,会自动加到每个微服务里面,且保证版本统一。
而 里面的依赖,不会自动加到每个微服务里面,如果微服务需要加入依赖,还是需要将依赖的代码写入自己的pom文件中,只是不用再写,系统会默认版本和父pom文件中的依赖版本一致。
通过父pom文件,就可以保证整个项目的依赖版本统一且不会冲突,将来升版本的时候,可以直接修改父pom文件。
3. 依赖的版本控制
如上面代码所示,我们将各个依赖的版本号放在放在了相应依赖中。若有需要,可以将版本号统一起来。