Spring Boot2.x 开发技巧及实战 第2章:Spring Boot2

第2章: Boot2.x 的基础配置
本章概要
温馨提示:
本文配套代码: 下的:-1
文章目录2.1.3 关于注解的总结 2.2核心注解 2.3自动配置 2.4自定义配置
2.1 我们先来讲注解 2.1.1 注解是什么?
官方定义:注解(也被称为元数据)是一种应用于类、方法、参数、变量、构造器及包声明中的特殊修饰符 。它是一种由JSR-175标准选择用来描述元数据的一种工具 。通俗来讲,也就是为我们在代码中添加信息提供了一种形式化的方法,使我们可以在稍后某个时刻非常方便地使用这些数据 。
其实呢,注解本身没有任何的作用 。简单说和注释没有什么区别,而它有作用的原因是:注解解释类,也就是对注解解释的特定类 。这样讲,还是比较抽象,下面我们利用一个实例来讲解一下,让大家亲自动手去写一个注解,也取大家就会深入了解了 。
2.1.2 亲手写一个注解
为了更好的理解注解,我们在编写实例时,会对一些代码进行解释,同时也会调试,请大家一定要准备好开发环境(可以参照上一章最后一节的内容搭建),让我们一起动手吧 。
实例功能:通过实体类添加数据库表注解、类中变量添加列注解方式,根据实体类对象,利用反射机制,生成查询sql语句 。这个功能类似于的思想 。
2.1.2.1 编写注解类 创建包:com.binge...并在此包下创建和两个注解类
小技巧:创建注解小技巧 。
在创建类时,在弹出的对话框中选择类型即可,如下图
创建接口类、枚举类,也选择响应的类型即可 。
生成代码如下:
public @interface Mytable {}
从生成的代码我们可以看出,注解的类定义其实和接口差不多,区别在与@前面多了一个@符号 。也许你会问,这样一个注解就定义完毕了吗? 当然不会,下面我们继续讲一下,注解的属性 。
2.1.2.2 注解属性
注解的属性也称为成员变量,注解只有成员变量,没有方法 。注解的成员变量在注解的定义中以“无形参的方法”形式来声明,其方法名定义了该成员变量的名字,其返回值定义了该成员变量的类型 。
注解内的可使用的数据类型是有限制的,类型如下:
所有的基本类型(int,float,等)
【Spring Boot2.x 开发技巧及实战 第2章:Spring Boot2】Class
enum(@ 中属性的类型为枚举)
以上类型的数组(@ 中属性类型为枚举类型的数组)
编译器对属性的默认值也有约束 。首先,属性不能有不确定的的值 。也就是说,属性要么具有默认值,要么在使用注解时提供属性的值 。对于非基本类型的属性,无论是在源代码中声明时,或是在注解接口中定义默认值时,都不能使用 null 为其值 。因此,为了绕开这个约束,我们需要自己定义一些特殊的值,例如空字符串或负数,来表示某个属性不存在 。
2.1.2.3 注解组成
J2SE5.0版本在java.lang.提供了四种元注解,专门注解其他的注解:
@–一个简单的标记注解,表示是否将注解信息添加在java文档中 。
@– 定义该注解的生命周期 。
@ – 表示该注解用于什么地方 。如果不明确指出,该注解可以放在任何地方 。注解()可被用于 (包)、types(类、接口、枚举、类型)、类型成员(方法、构造方法、成员变量、枚举值)、方法参数和本地变量(如循环变量、catch参数) 。在注解类型的声明中使用了可更加明晰其修饰的目标 。取值()有:
为我们的注解类添加如下元注解: 注解是作用于类上的,并且一直生效,注解是作用于成员变量上的,并且一直生效 。