网站首页 > java教程 正文
本文主要讲述:Java工具包Hutool(下)
前言:接着《强大的Java工具包Hutool(上)》来讲,由于有大佬说标题中“强大的”并非名副其实,而且Hutool有很多隐藏bug不能乱用,作者经过思考后,觉得确实布局严谨,因此本文标题去除掉“强大的”字样。
一、ExcelReader和ExcelWriter,实现Excel的解析与生成
//1.解析Excel,获取到excel的所有数据
ExcelReader reader = ExcelUtil.getReader("F:/1.xlsx");
List<List<Object>> list = reader.read();
//2.生成Excel
ExcelWriter writer = ExcelUtil.getWriter("F:/1.xlsx");
writer.writeHeadRow(Arrays.asList("名称", "数量"));
writer.writeRow(Arrays.asList("苹果", 2));
writer.close();
excel生成效果是这样的:
二、BeanUtil实现Map和Bean的互转
//1.Map转Bean
Map<String, Object> map = new HashMap<>();
map.put("name", "张三");
map.put("age", 18);
Persion person = BeanUtil.fillBeanWithMap(map, new Persion(), true);
System.out.println(person.getName() + ":" + person.getAge());
输出结果:张三:18
//2.Bean转Map
Persion p = new Persion();
p.setName("张三");
p.setAge(18);
Map<String, Object> map = BeanUtil.beanToMap(p);
System.out.println(map.toString());
输出结果:{name=张三, age=18}
三、CronUtil创建全局定时任务
//生成定时任务,每2秒执行一次
CronUtil.schedule("*/2 * * * * *", new Task() {
@Override
public void execute() {
System.out.println("现在时间:" + DateUtil.date());
}
});
CronUtil.setMatchSecond(true);
CronUtil.start();
输出结果:
现在时间:2023-07-24 15:17:40
现在时间:2023-07-24 15:17:42
现在时间:2023-07-24 15:17:44
四、CircleCaptcha生成图形验证码
//生成图形验证码,circleCaptcha.getCode()是验证码的值
CircleCaptcha circleCaptcha = CaptchaUtil.createCircleCaptcha(300, 200, 6, 10);
circleCaptcha.write("F:/1.png");
为什么Hutool有很多bug,却仍然受到国内广大码友的欢迎呢,原因大致有三:
1、工具类种类多而全;2、全中文注释;3、源码简单易读
放张源码截图,一目了然
Hutool作为一款国产软件,尽管现阶段他还存在很多问题,但我们要相信它会越来越好。在其历次版本更新中,也证实了这一点。
但在中大型项目中,还是不建议使用Hutool。感谢你的阅读~
写在最后:看了条友的评论后,个人受益匪浅,希望大家能多多指出问题,我会继续努力,写有用的文章。
猜你喜欢
- 2024-12-08 干掉复杂的工具类,国产Java工具类库 Hutool 很香!
- 2024-12-08 Java判空,Optional和工具类真香?还是if(obj == null)更靠谱?
- 2024-12-08 100个Java工具类之44:集合工具类Apache之ListUtils
- 2024-12-08 100个Java工具类之40:对象工具类Apache之ObjectUtils
- 2024-12-08 JDK8中新增的Optional工具类真的很好用哦,建议收藏
- 2024-12-08 100个Java工具类之8:java.util包下的Collections
- 2024-12-08 100个Java工具类之24:强大的Java工具包Hutool(上)
- 2024-12-08 Java常用的几种属性拷贝工具类使用总结
- 2024-12-08 开源谷歌java工具类-guava(非常实用)
- 2024-12-08 Arrays工具类常用方法【Java编程基础】
你 发表评论:
欢迎- 06-04C++优先级调度队列(Priority Queue)
- 06-04数据结构与算法-优先队列(优先队列 数组实现)
- 06-04什么是优先队列?(优先队列原理)
- 06-04终于有架构大牛把分布式系统概念讲明白了,竟然用了足足800页
- 06-04分布式事物如何保证接口请求顺序性?
- 06-04微服务下分布式事务模式的详细对比
- 06-04彻底掌握分布式事务2PC、3PC模型(分布式事务 三阶段)
- 06-04分布式事务最全详解(看这篇就够了)
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)