微服务项目中SpringBoot Api介绍(一)

81 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第8天,点击查看活动详情

前言

陆陆续续写了差不多一个月了,也已经工作不知不觉过了一年了,下面我将给刚入行的小白们介绍一下SpringBoot这个大框架大容器中的一些注解或APi。将会带大家入个门扫个盲。

项目结构

image.png

这是我们公司的项目结构,没有什么特殊业务直接给大家看了,先带搭建了解一下目录结构,src是大家非常熟悉的根目录,而紧接着后面的target则是编译代码,gitignore则是git上传后需要忽略的内容,jenkinsfile 正如其名及时詹金斯的CICD脚本。

我们先着手看一下APPLICATION这个类

每一个springboot工程大部分都会拥有Application这个启动类。具体代码如下:

@EnableWftpPlatform
@EnableZhenTianApiPlatform
@SpringBootApplication
public class TocPlatformDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(TocPlatformDemoApplication.class, args);
    }

}

他是一个非常简单的启动类,跟其他简单工程一样,然后我在讲一下我们这个项目背景,他是微服务架构所以类上面出现了一些奇怪的注解,这就是我们今天要讲的内容,这是自定义注解 与 SpringBoot启动注解。

@EnableWftpPlatform

这个注解进入内部让我们看看怎么写的,首先他的开头四大元注解应该没什么好说的了,这个需要大家有java基础就知道了,常用于定义注解的一些属性。然后这个注解下面的Import的作用是重点它主要用于扩展包扫描,所以这里的意思就是把WebConditionAutoConfiguration中的包引入进来到注解中,再付给使用这个注解的用户。

@Target({ElementType.TYPE})
@Retention(RetentionPolicy.RUNTIME)
@Documented
@Inherited
@Import({WebConditionAutoConfiguration.class})
public @interface EnableWftpPlatform {
}

@EnableZhenTianApiPlatform

该注解与上面的注解是一致的,只不过是不同的代码来导入进该工程,这样的好处就是解耦并且插件化,需要你就注解引进来,不需要你就注解删掉解除。