项目中用到了Lombok,java bean看起来更简洁了,没有了一大堆的getter和setter,自动补充了equals、构造方法,toString等,但是一个致命的问题是导致了apache common-beanutils包里的setProperty和copyProperties方法失效,springframework包里的beanutils倒是ok,这就一下子搞的你不知道它会在哪里给你挖一个坑!还是手工补全getter和setter靠谱。
所以,基于目前的经验总结一下Lombok,也许说的不对:
优点:
- 代码简洁,少了一些没多大意义的getter和setter。(但是生成这些方法在eclipse里也就是按一下快捷键的问题,3秒钟都不要)
- 省事,toString这些方法要是自己写还是要花点时间
缺点:
- 强迫别人使用。你用了这个插件,那么所有人都要用,否则别人机器上编译不过,这个太扯淡了,你自己怎么high都可以,但是不能强迫别人啊
- 不知道哪里有坑。至少目前是common-beanutils-1.9.3会出问题。
如果只是想用toString,构造方法这些的,可以单独给java bean加上相应的注解,“@ToString”,“@AllArgsConstructor”,“@RequiredArgsConstructor” 等,
本文探讨了Lombok在项目中的应用,指出其带来的代码简洁性和自动化特性,如自动补全getter、setter及equals方法等。然而,也提到了Lombok可能导致的兼容性问题,如与apache common-beanutils包冲突,以及对团队协作的影响,强调了在使用前需充分考虑这些潜在风险。
257





