前言

今天在看GitHub某大神写的代码的时候看到一个标签并没有使用过,所有百度了一下使用方法在此记录一下。

@Accessors

Accessor的中文含义是存取器,@Accessors用于配置getter和setter方法的生成结果。

源代码:

@Target({ElementType.TYPE, ElementType.FIELD})

@Retention(RetentionPolicy.SOURCE)

public @interface Accessors {

/**

* If true, accessors will be named after the field and not include a {@code get} or {@code set}

* prefix. If true and {@code chain} is omitted, {@code chain} defaults to {@code true}.

* default: false

*

* @return Whether or not to make fluent methods (named {@code fieldName()}, not for example {@code setFieldName}).

*/

boolean fluent() default false;

/**

* If true, setters return {@code this} instead of {@code void}.

* default: false, unless {@code fluent=true}, then default: true

*

* @return Whether or not setters should return themselves (chaining) or {@code void} (no chaining).

*/

boolean chain() default false;

/**

* If present, only fields with any of the stated prefixes are given the getter/setter treatment.

* Note that a prefix only counts if the next character is NOT a lowercase character or the last

* letter of the prefix is not a letter (for instance an underscore). If multiple fields

* all turn into the same name when the prefix is stripped, an error will be generated.

*

* @return If you are in the habit of prefixing your fields (for example, you name them {@code fFieldName}, specify such prefixes here).

*/

String[] prefix() default {};

}

此注解可以使用在方法上还有类上。

可以看到一共有3个属性,下面单独记录一下各个属性区别。

chain

chain的中文含义是链式的,设置为true,则setter方法返回当前对象.

fluent

fluent的时候:getter和setter方法的方法名都是基础属性名,且setter方法返回当前对象。生成的方法没有get/set名字。

prefix

生成getter和setter方法的字段名会忽视指定前缀。可以看到生产的方法中没有job这个前缀了。

accessors 作用_@Accessors介绍配置getter和setter相关推荐

  1. accessors 作用_lombok @Accessors用法详解(一看就能就懂)

    最近看到代码里面有@Accessors注解,看了一些文章没理解,这个一看就能懂: @Accessors(chain=true) 链式访问,该注解设置chain=true,生成setter方法返回thi ...

  2. 深度学习与计算机视觉系列(1)_基础介绍

    转载自: 深度学习与计算机视觉系列(1)_基础介绍 - 龙心尘 - 博客频道 - CSDN.NET http://blog.csdn.net/longxinchen_ml/article/detail ...

  3. serialversionuid的作用_为什么阿里Java规约要求谨慎修改serialVersionUID字段

    serialVersionUID简要介绍 serialVersionUID是在Java序列化.反序列化对象时起作用的一个字段.Java的序列化机制是通过判断类的serialVersionUID来验证版 ...

  4. Linux DMA Engine framework(2)_功能介绍及解接口分析

    转载.蜗窝科技,www.wowotech.net. Linux DMA Engine framework(2)_功能介绍及解接口分析 作者:wowo 发布于:2017-5-2 22:47 分类:Lin ...

  5. android getter不起作用,java - 如何在Android Studio中自动生成getter和setter

    java - 如何在Android Studio中自动生成getter和setter Android Studio中是否有一个快捷方式可以自动生成给定类中的getter和setter? 14个解决方案 ...

  6. Maven工作笔记003---公司只允许代理上网_给maven配置代理下载jar包

    技术交流QQ群[JAVA,C++,Python,.NET,BigData,AI]:170933152 公司只允许代理上网_给maven配置代理_下载jar包啊 配置很简单: 找到maven的setti ...

  7. 浅谈计算机教学论文,浅谈计算机在教学中的作用_优秀论文

    <浅谈计算机在教学中的作用_优秀论文>由会员分享,可在线阅读,更多相关<浅谈计算机在教学中的作用_优秀论文(5页珍藏版)>请在人人文库网上搜索. 1.浅谈计算机在教学中的作用论 ...

  8. 我的世界服务器修改nbt,我的世界NBT教程 关于NBT作用与内容介绍

    我的世界NBT教程 关于NBT作用与内容介绍.那今天游戏园小编给大家分享的是我的世界中NBT的作用以及内容的介绍,感兴趣的玩家不妨进来看看有关我的世界NBT的介绍吧! 几乎所有物体,包括所有实体/方块 ...

  9. java里getter和setter的作用和区别是什么?

    java是典型的面向对象的编程语言,面向对象三个特性,继承性,多态性,封装性,主要和封装性考虑,类里面的变量不想设置成公共的类型,但是还要给外部使用在这种实用场景下,从编程技巧上加上方法来获取或者设置 ...

最新文章

  1. C#双面打印解决方法(打印word\excel\图片)
  2. docker Rails Permission denied @ dir_s_mkdir
  3. Android中自定义Dialog外形,去除黑底和白色边框
  4. 双向滚动scrollview
  5. 如何安装rpm包?掌握rpm包管理工具就够了
  6. web嵌入到原生的app里需要注意的事项
  7. mongodb 时间戳 java_Java将日期类型Date时间戳转换为MongoDB的时间类型数据
  8. 这篇Redis文章,图灵看了都说好
  9. 《交互式程序设计 第2版》一3.6 关系比较
  10. 小手拍拍机器人_幼儿园互动儿歌游戏,小朋友瞬间变听话!
  11. How to Simulate the Price Order or Price Line Function using API QP_PREQ_PUB.PRICE_REQUEST Includes
  12. 格力电器详解举报奥克斯 巨头互撕为哪般?
  13. CVE-2021-21871: PowerISO 内存越界写漏洞
  14. 又是AI+IoT!谷歌试图收购物联网公司Xively
  15. 201521123026《Java程序设计》第2周学习总结
  16. [AppScan深入浅出]修复漏洞:会话标识未更新
  17. 数学分析 隐函数定理及其应用(第18章)
  18. 消费贷之京东白条、蚂蚁花呗和银行信用卡的那些分期“低费率”套路
  19. [POI2012] 约会 Rendezvous
  20. 为了以后小孩的成长,留在大城市好还是回到老家三线城市好? 从一线城市滚回二线三线城市的筒子们,你们重新找到新的生活经历了多久? 年轻人逃离一线城市 外地人生存环境愈发严峻...

热门文章

  1. feignclient对象找不到_领导同事争相介绍对象,相亲N次,我找不到一条结婚的理由...
  2. flow hive 新型蜂箱_全新Flow Hive 2使得养蜂人获取蜂蜜更轻松
  3. 反解析Navicat ncx加密后的密码(并导入到dbeaver)
  4. 使用Docker搭建LAMP环境,上线wordpress
  5. C语言封顶,我们的大屋顶|阳光方舟2.0--C-HOUSE正式封顶
  6. java8与hibernate_如何在JPA和Hibernate中使用Java 8 LocalDateTime
  7. 玩转 SpringBoot 2 快速整合 | RESTful Api 篇
  8. hql连接查询及外置命名查询
  9. 基于id3算法根据房价数据进行画图预测python
  10. 【题解】luoguP2680运输计划