美文网首页
springboot系列——lombok配置

springboot系列——lombok配置

作者: Caooz | 来源:发表于2020-10-08 22:47 被阅读0次

lombok插件,谁使用谁知道,用了lombok把你从生成getter/setter的泥沼中解脱出来,让你的代码看的更加简洁清爽!
引入依赖jar包:

<dependency>
<groupId> org. projectlombok </groupId>
<artifactId> lombok </artifactId> 
</dependency>

使用lombok前,我们的bean是这个样子的:


image.png

我们在写完对象的属性之后还要去生成对应的getter/setter,虽然现在的IDE中有插件来帮助生成或者生成代码工具会自动帮我们自动生成,但是这样的代码给我们的感觉比较冗余臃肿,所以lombok应运而生了,接下来我们看下引入lombok后的效果。
使用lombok后,我们的bean是这个样子的:

image

使用很简单,加入注解@Data就OK了。看一下代码是不是看的很清爽,它的好处还有一个就是,后面项目业务扩展加入其它字段属性,不需要自己再写完后去生成,防止自己忘了遗漏什么的。

既然lombok这么好,那我们项目都用它好了,但是one coin has two sides, lombok它也是有缺点的:
1.要求IDE增加对lombok的支持,比如IDEA中需要安装lombok的插件;如果你对外提供的服务使用lombok,那么可能引用jar的其他项目需要增加对lombok的支持,但是并不麻烦。

2.如果你想确认某个set或get方法是否在程序中被调用,你无法找到哪里使用的(即get/set中包含有业务逻辑处理)。但是我更认为这样的操作是违背了bean使用的初衷,bean尤其数据库和java类的映射bean,java对bean的定义和使用就是无参数的构造方法和set和get方法,而不应该在bean中处理任何和业务有任何关系的逻辑。

还有的人说这个lombok是个插件又不是插件,因为这个插件改变了我们的编码习惯,很容易让程序员忘却底层代码的样子,它的出现不利于源码的阅读与扩展(为什么我们项目中引入了依赖,IDE中还需要安装插件?因为在编译器编译时通过操作AST(抽象语法树)改变字节码生成,变向的就是说它在改变java语法)。如果Java中充斥这种插件,那么Java就不再是一门优秀的语言了。

其实,Java是一门语言,也是个工具,lombok同样是工具。怎么使用这个工具,那就需要仁者见仁、智者见智了。结合具体业务场景和项目实际情况,无需一味追求高大上的技术,适合的才是王道

相关文章

网友评论

      本文标题:springboot系列——lombok配置

      本文链接:https://www.haomeiwen.com/subject/vklkpktx.html