[Java 开发利器Lombok] 常用注解演示
在以往的对象模型编码时,我们需要写一大堆的get/set以及不同的构造函数等。Lombok为我们提供了一个非常好的插件形式。
在大多数的项目中,只需要使用到以下集中Annotation就足够了,如果需要查看更多的选项,请参考:传送门
@Getter@Setter@ToString@RequiredArgsConstructor生成final 字段的构造函数
      /**
       * java class
       */
      @RequiredArgsConstructor
      class UserVO {
          private final Integer id;
          private final String name;
          private int age;
      }
      /**
       * 编译后生成的代码
       */
      class UserVO {
          private final Integer id;
          private final String name;
          private int age;
          public UserVO(Integer id, String name) {
              this.id = id;
              this.name = name;
          }
    }
@Data组合注解
  /**
   * @see Getter
   * @see Setter
   * @see RequiredArgsConstructor
   * @see ToString
   * @see EqualsAndHashCode
   * @see lombok.Value
   */
  @Target(ElementType.TYPE)
  @Retention(RetentionPolicy.SOURCE)
  public @interface Data {
  	/**
  	 * ...
  	 */
  	String staticConstructor() default "";
  }
@Builder改变原有赋值模式
- 使用前

 - 使用后(建造者模式,在Feign源码中被大量使用)

 
@Slf4jlombok 提供,等价于
    public static final Logger LOGGER =
        LoggerFactory.getLogger(UserCenterApplication.class);
/**
 * This annotation is valid for classes and enumerations.<br>
 * @see <a href="https://www.slf4j.org/api/org/slf4j/Logger.html">org.slf4j.Logger</a>
 * @see <a href="https://www.slf4j.org/api/org/slf4j/LoggerFactory.html#getLogger(java.lang.Class)">org.slf4j.LoggerFactory#getLogger(java.lang.Class)</a>
 * @see lombok.extern.apachecommons.CommonsLog @CommonsLog
 * @see lombok.extern.java.Log @Log
 * @see lombok.extern.log4j.Log4j @Log4j
 * @see lombok.extern.log4j.Log4j2 @Log4j2
 * @see lombok.extern.slf4j.XSlf4j @XSlf4j
 * @see lombok.extern.jbosslog.JBossLog @JBossLog
 * @see lombok.extern.flogger.Flogger @Flogger
 */
@Retention(RetentionPolicy.SOURCE)
@Target(ElementType.TYPE)
public @interface Slf4j {
	/** @return The category of the constructed Logger. By default, it will use the type where the annotation is placed. */
	String topic() default "";
}
												
											[Java 开发利器Lombok] 常用注解演示的更多相关文章
- Java开发利器--Lombok,IDEA端安装教程
		
1.插件安装File-Setting-Plugins 2.开启注解支持: 3.安装lombok maven插件 <plugin> <groupId>org.projectlom ...
 - Java开发神器Lombok的使用与原理
		
在面向对象编程中必不可少需要在代码中定义对象模型,而在基于Java的业务平台开发实践中尤其如此.相信大家在平时开发中也深有感触,本来是没有多少代码开发量的,但是因为定义的业务模型对象比较多,而需要重复 ...
 - Java开发利器Myeclipse全面详解
		
Java开发利器Myeclipse全面详解: Ctrl+1:修改代码错误 Alt+Shift+S:Source命令 Ctrl+7:单行注释 Ctrl+Shift+/ :多行注释 Ctrl+I :缩进( ...
 - 20190905 Lombok常用注解
		
Lombok常用注解 val 用于声明类型,将从初始化表达式推断出类型,仅适用于局部变量和foreach循环,而不适用于字段.声明的局部变量为final变量. Java自带类型推断随着JDK版本提升越 ...
 - Spring注解开发-全面解析常用注解使用方法之生命周期
		
本文github位置:https://github.com/WillVi/Spring-Annotation/ 往期文章:Spring注解开发-全面解析常用注解使用方法之组件注册 bean生命周期  ...
 - Lombok 常用注解
		
Lombok Lombok 能以简单的注解形式来简化 java 代码,提高开发人员的开发效率.例如开发中经常需要写的 javaBean,都需要花时间去添加相应的 getter/setter,也许还要去 ...
 - 【java开发】ubuntu常用命令及环境搭建
		
学习第一天,今天内容相对简单,主要就是ubuntu一些常用命令及常规操作,后续涉及到环境的搭建,也会在本文再更. ubuntu环境搭建 第一种 也是最简单最方便的 通过vm虚拟机软件,下载iso镜像进 ...
 - 【java开发系列】—— 自定义注解
		
之前在开发中,就总纳闷,为什么继承接口时,会出现@Override注解,有时候还会提示写注解@SuppressWarnings? 原来这是java特有的特性,注解! 那么什么是注解呢? 注解就是某种注 ...
 - Java : JPA相关以及常用注解
		
SpringDataJPA自定义的查询方法 定义规范 And 并且 Or 或 Is,Equals 等于 Between 两者之间 LessThan 小于 LessThanEqual ...
 
随机推荐
- es6  数组去重
			
方法一: var arr = [1, 2, 2, 3, 4, 5, 5, 6, 7, 7,8,8,0,8,6,3,4,56,2]; var arr2 = arr.filter((x, index,se ...
 - 《Dotnet9》系列-开源C# WPF项目1《Accelerider.Windows》强力推荐
			
时间如流水,只能流去不流回! 点赞再看,养成习惯,这是您给我创作的动力! 本文 Dotnet9 https://dotnet9.com 已收录,站长乐于分享dotnet相关技术,比如Winform.W ...
 - Web基础了解版05-Servlet
			
Servlet Servlet? 从广义上来讲,Servlet规范是Sun公司制定的一套技术标准,包含与Web应用相关的一系列接口,是Web应用实现方式的宏观解决方案.而具体的Servlet容器负责提 ...
 - STM32的Keil找不到想要flash的解决方法
			
STM32的Keil找不到想要flash的解决方法:https://blog.csdn.net/qq_38376586/article/details/79582020
 - Cocos Creator 资源加载流程剖析【四】——额外流程(MD5 PIPE)
			
当我们将游戏构建发布到web平台时,勾选Md5 Cache选项可以开启MD5 Pipe,它的作用是给构建后的资源加上md5后缀,避免浏览器的缓存导致部分资源不是最新,因为使用了md5后缀后,当资源内容 ...
 - 线程join方法详解
			
执行逻辑:在当前代码块(比如main方法)中的线程A执行了join方法, 那么当代码块(main)执行到join方法时,会停止继续向下执行,一直到线程A执行完毕, main方法才会继续向下执行. 代码 ...
 - C#报Lc.exe已退出 代码为-1 错误解决方法
			
解决方法一:用记事本打开*.licx,里面写的全是第三方插件的指定DLL,删除错误信息,保存,关闭,重新生成解决方案. 解决方法二:把项目文件夹下Properties文件夹下的licenses.lic ...
 - Geoserver安装
			
准备内容 安装环境:win10*64位专业版 安装文件:geoserver-2.15.2 安装步骤 安装JDK 1.安装GeoServer是基于Java的环境,所以需要先装Jdk环境. 2.前往官网下 ...
 - Android框架式编程之LiveData
			
一.LiveData 介绍 LiveData是 Google 推荐的 Android 架构组件之一,是一个基于观察者模式的数据容器,但与一般的被观察者不同的是,它是有生命周期感知功能,解决了Andro ...
 - React Hook父组件获取子组件的数据/函数
			
我们知道在react中,常用props实现子组件数据到父组件的传递,但是父组件调用子组件的功能却不常用.文档上说ref其实不是最佳的选择,但是想着偷懒不学redux,在网上找了很多教程,要不就是hoo ...