java中lombok插件
lombok官网这个插件可以自动生成get和set方法,可以处理异常,可以自动关闭一些流操作,可以自动写hashcode和equals方法,可以自动生成构造器,可以使用var或者val定义变量。。。,其实这个框架是在编译期修改class文件从而将上述功能加入到class文件中去的,所以在自己的代码中并不会有get和set方法,只要加上注解就可以在产生的class文件中拥有这些方法。
lombok插件的安装
1.先去官网下载lombok.jar(注意版本,并不是所有版本都和你的代码编辑器匹配)
myeclipse2014:链接:https://pan.baidu.com/s/1Y6w7j1C8BPFpNzTgfPSH3g 提取码:yp1w
IntelliJ IDEA 2018.3.5:链接:https://pan.baidu.com/s/13JnMoeFNnIzT7KvH6M48JQ 提取码:z8qy
2.安装
myeclipse:在lombok.jar所在目录打开cmd,执行 java -jar lombok.jar命令,如果找不到自己myeclipse所在目录就肯定是版本不对,找到后点击install就可以了
idea:在idea的setting中找到插件这一栏:install plugin from Disk ,然后选择下载好的插件所在目录,就可以安装了,安装好了以后重启idea
lombok的使用
@Getter //编译器会自动生成get和set方法
@Setter
public class Person{
private String name ;
private Integer age ;
}
//测试
public class Test{
public static void main(String[] args){
Person p = new Person() ;
p.setAge(50) ;
p.getName() ;
}
}
@Setter
@ToString //将所有字段生成(age=,name=)的形式
@EqualsAndHashCode(of="age") //根据age字段生成hashcode和equals方法
public class Person{
private String name ;
private Integer age ;
}
//测试
public class Test{
public static void main(String[] args){
System.out.println(new Person()) ;
Person p1 = new Person() ;
p1.setAge(10) ;
Person p2 = new Person() ;
p2.setAge(10) ;
System.out.println(p1.equals(p2)) ; //输出结果是true,因为hashcode和equals是根据age生成的
}
}
@Data //会生成get,set,hashcode和equals(根据所有字段)
public class Person{
private String name ;
private Integer age ;
}
public class Test{
@SneakyThrows(Exception.class) //处理此方法的Exception异常
public static void main(String[] args){
@Cleanup FileInputStream fi = new FileInputStream("./1.txt") ; //cleanup注解可以自动在最后关闭流
var name = "wf" ; //使用var定义一个变量
val name = "wf" ; //使用val定义一个变量
}
}
功能还有很多,这里只介绍了部分功能,需要了解的可以去官网