Intelli J中好用和提高生产力的插件:Lombok 和Free Mybatis Plugin
开头:
做过Java的同学都知道,对编写Bean.class,要写很多Setter和Getter函数,当然我们可以利用IDE中的自带的Setter,Getter插件,完成Bean的属性函数编写
例如,在Mac 中的Intelli J中
直接用command+N,或者右键点击Generate
当然,这种方式还是不够简洁,当属性特别多的时候,整个类都是setter和getter函数,挺烦人的;当你要删除和添加属性的时候,也会很繁琐
Lombok插件:
在Intelli J,Lombok插件就应运而生了,我们就来直接看效果吧,
import lombok.Data; @Data public class Product { private int id; }
直接使用类的声明上面添加@Data,或者在属性上添加@Setter或者@Getter
import lombok.Getter; import lombok.Setter; public class Product { @Setter @Getter private int id; }
当然,利用@AllArgsConstructor,也可以自动生成构造函数
import lombok.AllArgsConstructor; import lombok.Data; @Data @AllArgsConstructor //所有参数作为构造函数 public class Product { private int id; }
原理:
利用注解,在编译的时期,通过一种抽象语法树,自动匹配和生成Setter和Getter函数
下面就是编译后的.class文件,可以看出整个过程和结果还是很容易理解的,只要你理解注解的原理
// // Source code recreated from a .class file by IntelliJ IDEA // (powered by Fernflower decompiler) // public class Product { private int id; public Product() { } public int getId() { return this.id; } public void setId(int id) { this.id = id; } public boolean equals(Object o) { if (o == this) { return true; } else if (!(o instanceof Product)) { return false; } else { Product other = (Product)o; if (!other.canEqual(this)) { return false; } else { return this.getId() == other.getId(); } } } protected boolean canEqual(Object other) { return other instanceof Product; } public int hashCode() { int PRIME = true; int result = 1; int result = result * 59 + this.getId(); return result; } public String toString() { return "Product(id=" + this.getId() + ")"; } }
2.Free Mybaits Plugin:
做Java EE的时候,用到最多的ORM框架应该就是MyBaits了
MyBaits的主要结构就是service.java,mapper.java,mapper.xml组成,可以简单地理解下,service主要是提供业务接口的,mapper.class就是提供数据库接口的,mapper.xml就是操作数据库的;差不多就是这样的流程,service-->mapper.java-->mapper.xml,其中,mapper.java也和mapper.xml一一对应
如果我们手动编写这些代码,是不是很繁琐,本来Mybaits是帮我们屏蔽了很多数据库操作的细节的,可是,我们还是要编写很多代码和执行很多操作
当然肯定会有各种插件来帮我们减少代码量和操作量,针对Mybaits,国人做了一个插件:https://github.com/wuzhizhan/free-idea-mybatis,这个插件怎么用呢?
请打开这个链接,里面说得很详细,
安装方法:
以Lombok为例
1.直接在Intelli J中Preference--->Plugins--->搜索Lombok
2.上面的方法,可能会经常读取超时的问题,因为我们就需要先把插件文件下载本地,然后从本地安装下载
首先直接百度搜索插件,然后下载本地(推荐方法2)
然后,从Preference--->Plugins--->从本地安装
总结:
在Java这个庞大可持续的生态链中,各种个样的插件都很多,紧跟最新技术发展,那我们的编程效率就会高很多,我们就可以专心在业务中去。当然也要懂基本的原理,遇到问题才能从容应对
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
这些计算机经典书,如果你没读过不合适
教育就是当一个人把在学校所学全部忘光之后剩下的东西。 ——阿尔伯特•爱因斯坦 软件开发的世界是不断变化的。每一天都会有一门新的技术出现,昨天你学到的东西今天可能就毫无意义了。 在这个飞速变化的世界里,学习的能力是至关重要的。程序员如果选择故步自封,忽视自己的技能发展,那么他们很快就会落在后面,错失未来,只能被派去维护过去的遗留系统。如果想摆脱这种宿命,你就需要学会如何学习。这20本经典书,让你打好基础快速进入新领域。 入门经典篇 《C Primer Plus(第6版)中文版》 【美】Stephen Prata(史蒂芬 普拉达)著 与以前的版本一样,作者的目标仍旧是为读者提供一本入门型、条理清晰、见解深刻的C语言教程。作者把基础的编程概念与C语言的细节很好地融合在一起,并通过大量短小精悍的示例同时演示一两个概念,通过学以致用的方式鼓励读者掌握新的主题。 每章末尾的复习题和编程练习题进一步强化了重要的信息,有助于读者理解和消化那些难以理解的概念。本书采用了友好、易于使用的编排方式,不仅适合打算认真学习C语言编程的学生阅读,也适合那些精通其他编程语言,但希望更好地掌握C语言这门核心语言的开发...
- 下一篇
做数据分析,Python和R究竟哪个更强?
几十年来,研究人员和开发人员一直在争论,对于进行数据科学和数据分析,Python和R语言哪个才是更好的选择?近年来,数据科学在生物技术、金融和社交媒体等多个行业迅速发展。数据科学的重要性不仅得到了业内人士的认可,而且还得到了许多学术机构的认可,目前越来越多的学校都开始设立数据科学学位。 随着开源技术的迅速取代了传统的闭源技术,Python和R语言在数据科学中变得越来越受欢迎。 数据科学就业增长图——Indeed.com 1. 简介 Python由Guido van Rossum发明,于1991年首次发布。Python 2.0于2000年发布,8年后Python 3.0发布。Python 3.0有一些主要的语法修正,与Python 2.0不兼容。但是,2to3等Python库可以在两个版本之间自动的转换。Python 2.0计划在2020年停止使用。 R语言由Ross Ihaka和Robert Gentleman于1995年发明。R语言最初是由S语言的一种实现,后者由John Chambers于1976年发明。R语言首个稳定的测试版本1.0.0于2000年发布。目前,由R开发核心团队维护...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- Hadoop3单机部署,实现最简伪集群
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS6,CentOS7官方镜像安装Oracle11G
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS8编译安装MySQL8.0.19
- CentOS6,7,8上安装Nginx,支持https2.0的开启