框架常用注解

目录

一、lombok

@Data :

@AllArgsConstructor

@NoArgsConstructor :

@Setter :

@Getter :

@EqualsAndHashCode :

@Log4j/@Slf4j :

二、Java Persistence

@Entity

@Table

@Id

@GeneratedValue

@Column

三、spring boot

@Configuration

四、spring boot

@SpringBootApplication:

@SpringBootConfiguration

@ComponentScan

@EnableAutoConfiguration注解

五、spring cloud 

@EnableDiscoveryClient



一、lombok

@Data :

注在类上,提供类的get、set、equals、hashCode、toString等方法

@AllArgsConstructor

:注在类上,提供类的全参构造

@NoArgsConstructor :

注在类上,提供类的无参构造


@Setter :

注在属性上,提供 set 方法


@Getter :

注在属性上,提供 get 方法


@EqualsAndHashCode :

注在类上,提供对应的 equals 和 hashCode 方法


@Log4j/@Slf4j :

注在类上,提供对应的 Logger 对象,变量名为 log

二、Java Persistence

@Entity

说明这个class是实体类,并且使用默认的orm规则,即class名就是数据库表中表明,class字段名即表中字段名。@Entity注解指明这是一个实体Bean。

在项目启动时会根据该类自动生成一张表,表的名称即@Entity注解中name的值,如果不配置name,默认表明为类名

@Table

 @Table注解默认情况下只会完成表和实体之间的映射,声明才对象映射到数据库的数据表,通过它可以为实体指定表(table)

注:

@Table注解是一个非必须的注解,@Table注解指定了Entity所要映射的数据库表,其中@Table.name()用来指定映射表的表名。

如果同时使用了@Entity(name="student")和@Table(name="book"),最终对应的表名是book,这说明优先级:@Table>@Entity
 

@Id

注解表示该属性是一个主键

@GeneratedValue

注解表示注解自动生成,strategy则表示主键的生成策略

@Column

默认情况下,生成的表中字段的名称就是实体类中属性的名称,通过@Column注解可以定制生成的字段属性,name表示该属性对应的数据表中字段的名称,nullable表示该字段非空

三、spring boot

@Configuration

定义 Bean:通过在配置类中使用 @Bean 注解,可以定义和组装 Bean,并将其纳入 Spring IoC 容器的管理,从而使得这些 Bean 可以在应用程序中被使用。

四、spring boot

@SpringBootApplication:

@SpringBootApplication是 :@SpringBootConfiguration,@EnableAutoConfiguration,@ComponentScan 的符合注解

@SpringBootConfiguration

它实际上就是一个 @Configuration 注解,这个注解就是为了让当前类作为一个配置类交由 Spring 的 IOC 容器进行管理

@ComponentScan

用于定义 Spring 的扫描路径,等价于在 xml 文件中配置 context:component-scan,假如不配置扫描路径,那么 Spring 就会默认扫描当前类所在的包及其子包中的所有标注了 @Component,@Service,@Controller 等注解的类。

@EnableAutoConfiguration注解

1、从classpath中搜索所有META-INF/spring.factories配置文件然后,将其中org.springframework.boot.autoconfigure.EnableAutoConfiguration key对应的配置项加载到spring容器只有spring.boot.enableautoconfiguration为true(默认为true)的时候,才启用自动配置

2、@EnableAutoConfiguration还可以进行排除,排除方式有2中,一是根据class来排除(exclude),二是根据class name(excludeName)来排除

3、它是一个由@AutoConfigurationPackage 和 @Import 注解组成的复合注解

五、spring cloud 

@EnableDiscoveryClient

 注册服务中心(cloud从Edgware版本开始,可以不加@EnableDiscoveryClient注解)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值