Lombok、Hutool等开发利器

目录

1.lombok

介绍:

Lombok项目是一个Java库,它会自动插入编辑器和构建工具中,Lombok提供了一组有用的注释,用来消除Java类中的大量样板代码。仅五个字符(@Data)就可以替换数百行代码从而产生干净,简洁且易于维护的Java类。

引入依赖:

<dependency>
    <groupId>org.projectlombok</groupId>
    <artifactId>lombok</artifactId>
    <version>1.18.12</version>
    <scope>provided</scope>
</dependency>

使用:

常用注解:
@Setter //注解在类或字段,注解在类时为所有字段生成setter方法,注解在字段上时只为该字段生成setter方法。
@Getter //使用方法同上,区别在于生成的是getter方法。
@ToString //注解在类,添加toString方法。
@EqualsAndHashCode// 注解在类,生成hashCode和equals方法。
@NoArgsConstructo// 注解在类,生成无参的构造方法。
@RequiredArgsConstructor// 注解在类,为类中需要特殊处理的字段生成构造方法,比如final和被@NonNull注解的字段。
@AllArgsConstructor//注解在类,生成包含类中所有字段的构造方法。
@Data//注解在类,生成setter/getter、equals、canEqual、hashCode、toString方法,如为final属性,则不会为该属性生成setter方法。
@Accessors (chain =true)// 用来给类中set方法开启链式调用chain 属性,用来指定是否开启set方法链式调用true 。
@Slf4j//注解在类,生成log变量,严格意义来说是常量。
//具体用法
@Data
@Slf4j
@Accessors(chain =true )
public class User{
  private String id ;
  private String name ;
  private Integer age;
  private Date bir;
}
user.setId("21").setName("chiry").setAge(23).setBir(new Date());

log.info("this is log method !");
log.debug("----");
log.warn("----");
log.error("----");

Hutool

介绍:

Hutool
A set of tools that java sweet
是一个小而全的java工具类库,通过静态方法封装,降低静态方法的封装,降低相关API的学习成本,提高工作效率,使java拥有函数式语言般的优雅,让java语言也可以甜甜的。
官网:
https://gitee.com/loolly/hutool?utm_source=alading&utm_campaign=repo#%E7%AE%80%E4%BB%8B

使用:

maven依赖:
可以根据需求对每个模块单独引入,也可以通过引入hutool-all方式引入所有模块。

<dependency>
    <groupId>cn.hutool</groupId>
    <artifactId>hutool-all</artifactId>
    <version>5.5.8</version>
</dependency>

包含组件

一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时提供以下组件:

模块 介绍
hutool-aop JDK动态代理封装,提供非IOC下的切面支持
hutool-bloomFilter 布隆过滤,提供一些Hash算法的布隆过滤
hutool-cache 简单缓存实现
hutool-core 核心,包括Bean操作、日期、各种Util等
hutool-cron 定时任务模块,提供类Crontab表达式的定时任务
hutool-crypto 加密解密模块,提供对称、非对称和摘要算法封装
hutool-db JDBC封装后的数据操作,基于ActiveRecord思想
hutool-dfa 基于DFA模型的多关键字查找
hutool-extra 扩展模块,对第三方封装(模板引擎、邮件、Servlet、二维码、Emoji、FTP、分词等)
hutool-http 基于HttpUrlConnection的Http客户端封装
hutool-log 自动识别日志实现的日志门面
hutool-script 脚本执行封装,例如Javascript
hutool-setting 功能更强大的Setting配置文件和Properties封装
hutool-system 系统参数调用封装(JVM信息等)
hutool-json JSON实现
hutool-captcha 图片验证码实现
hutool-poi 针对POI中Excel和Word的封装
hutool-socket 基于Java的NIO和AIO的Socket封装

可以根据需求对每个模块单独引入,也可以通过引入hutool-all方式引入所有模块。


使用:

参考api:
https://apidoc.gitee.com/loolly/hutool/

中文文档:
https://www.hutool.cn/docs/

核心(Hutool-core)

IO工具类使用

参见以上官网文档

压力测试

Apache旗下Jmeter
使用Jmeter 压力测试请求。

启动:bin - Jmeter/ jmeter.bat

上一篇:Eclipse - lombok的@Slf4j和@Data无效


下一篇:从Lombok到JSR-269