IDEA好用的插件

分享一些项目中用到的好用的IDEA插件...

1. Lombok

Lombok是一个非常实用的java工具,可以精简代码,避免过多冗长重复代码。主要是通过注解来实现,有@Data、@Getter/@Setter、@Builder、@NonNull等。

注解:

  • @ToString:注解在类上,调用 toString() 方法,可输出实体类中属性值。
  • @Getter:注解在类上,插件自动生成实体类中所有属性的getter方法; 
  • @Setter:注解在类上,插件自动生成实体类中所有属性的setter方法;
  • @RequiredArgsConstructor:注解在类上,配合 @NonNull 注解使用,生成指定参数的构造方法。比如在name属性上加@NonNull 注解,则实体类会生成需要name属性参数的构造方法;
  • @NoArgsConstructor:注解在类上,可以生成无参构造方法;
  • @AllArgsConstructor:注解在类上,可以生成含实体类全参数的构造方法;
  • @EqualsAndHashCode:注解在类上,可以生成 equals(Object other) 和 hashCode() 方法。可以通过参数 exclude 排除一些属性,可以通过参数 of 指定仅使用哪些属性
  • @Date:注解在类上,相当于同时使用了@ToString、@EqualsAndHashCode、@Getter、@Setter和@RequiredArgsConstrutor这些注解;

缺点:

  • 使用Lombok的前提就是开发人员一定要在开发工具上下载该插件,否则会有异常,也就是项目全部开发人员必须强制要求下载。
  • 破坏封装:Lombok提供的public的setter和getter,也就是外部可以随意调用来修改值。
  • 使用@Data时,会自动生成equals()方法 。但是如果只使用了@Data,而不使用 @EqualsAndHashCode(callSuper=true)的话,会默认是 @EqualsAndHashCode(callSuper=false),这时候生成的equals()方法只会比较子类的属性,不会考虑从父类继承的属性,无论父类属性访问权限是否开放。

    比如,有多个类有相同的部分属性,把它们定义到父类中,恰好id(数据库主键)也在父类中,那么就会存在部分对象在比较时,它们并不相等,却因为lombok自动生成的equals(Object other) 和 hashCode()方法判定为相等,从而导致出错。

安装方法:

(1)导入依赖:

<dependency>

    <groupId>org.projectlombok</groupId>

    <artifactId>lombok</artifactId>

</dependency>

(2)IDEA中搜索下载:

Files → settings → plugins

点击install即可,我的已经下载过了...下载之后重启IDEA,来一个例子:

import lombok.Data;


@Data
public class Person{

    private String name;

    private int age;

    private char gender;
}

2. Free MyBatis Plugin

(1)先来安装这个插件,安装方式同上,不需要修改pom文件。

(2)让我们添加一个数据库

填写自己的数据库信息,如果test connection无法点击,点击下面黄色叹号下载之后即可。

(3)右键需要生成的表~

设置生成文件的包路径等信息

(4)成功!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值