服务器之家

服务器之家 > 正文

Intellij IDEA安装lombok插件及使用详解

时间:2021-06-19 11:13     来源/作者:zhglance

项目中经常使用beanentity等类,绝大部分数据类类中都需要getsettostringequalshashcode方法,虽然eclipseidea开发环境下都有自动生成的快捷方式,但自动生成这些代码后,如果bean中的属性一旦有修改、删除或增加时,需要重新生成或删除get/set等方法,给代码维护增加负担。而使用了lombok则不一样,使用了lombok的注解(@setter,@getter,@tostring,@@requiredargsconstructor,@equalsandhashcode或@data)之后,就不需要编写或生成get/set等方法,很大程度上减少了代码量,而且减少了代码维护的负担。故强烈建议项目中使用lombok,去掉bean中get、set、tostring、equals和hashcode等方法的代码。

一、实战

1.安装lombok插件:

具体流程如图:

1.1

Intellij IDEA安装lombok插件及使用详解

1.2

Intellij IDEA安装lombok插件及使用详解

1.3

Intellij IDEA安装lombok插件及使用详解

2.添加lombok的maven的pom.xml依赖:   

?
1
2
3
4
5
<dependency>
      <groupid>org.projectlombok</groupid>
      <artifactid>lombok</artifactid>
      <version>1.16.10</version>
</dependency>

3. 示例代码student.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
package com.lombok.demo;
import lombok.equalsandhashcode;
import lombok.getter;
import lombok.setter;
import lombok.tostring;
/**
 **/
@setter
@getter
@tostring
@equalsandhashcode
public class student {
  private string name;
  private int age;
  private string male;
  private string studentno;
}

4. 测试类lomboktest.java

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package com.lombok.demo;
import lombok.extern.java.log;
@log
public class lomboktest {
  public static void main(string[] args) {
    student student = new student();
    student.setage(27);
    student.setmale("man");
    student.setname("lance");
    student.setstudentno("2017");
    system.out.println(student.tostring());
    student student2 = new student();
    student2.setage(27);
    student2.setmale("man");
    student2.setname("lance");
    student2.setstudentno("2017");
    system.out.println(student.equals(student2));
    student2.setstudentno("2018");
    system.out.println(student.equals(student2));
    log.info("lombok test");
  }
}

5. 输出结果:

student(name=lance, age=27, male=man, studentno=2017)
true
false
lombok test

结果分析,如果没有添加@setter注解,则lomboktest中的student示例无法使用setage()等方法。使用lombok之后,省去了许多没必要的get,set,tostring,equals,hashcode代码,简化了代码编写,减少了代码量。

另外@data注解的作用相当于 @getter @setter @requiredargsconstructor @tostring @equalsandhashcode的合集。

另外@log 省去了在lomboktest中添加 getlogger的如下代码: 

?
1
private static final java.util.logging.logger log = java.util.logging.logger.getlogger(logexample.class.getname());

看,简单吧!

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对服务器之家的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/zhglance/article/details/54931430

标签:

相关文章

热门资讯

2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部