hutool介绍:

官网文档:https://hutool.cn/docs/#/

Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。

一、pom.xml中引入hutool依赖

<!--hutool 工具集合引入--><dependency><groupId>cn.hutool</groupId><artifactId>hutool-all</artifactId><version>5.1.0</version></dependency><!--可选 --><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.6</version><scope>provided</scope></dependency>

二、使用示例(常用)

1、Assert断言

 public class AssertTest {@Testpublic void test1(){String a="abc"+"def";//断言为表达式的结果为真Assert.isTrue(a.equals("abcdef"));String  b="11";Assert.notNull(b);//断言对象不为nullString c=null;Assert.isNull(c);//断言对象为nullint d=8;Assert.checkBetween(d,1,10);//断言区间范围}
}

2、 字符串工具

public class StrTest {@Testpublic void test1(){String s="a b c ";Assert.isTrue(StrUtil.isNotEmpty(s));//不为emptyAssert.isTrue(StrUtil.isNotBlank(s));//不为blankAssert.isTrue(StrUtil.cleanBlank(s).equals("abc"));//清除空白字符//字符串模板String s2= StrUtil.format("你好:{},欢迎来到{}的世界","小明","java");Assert.isTrue(s2.equals("你好:小明,欢迎来到java的世界"));//字符串模板 map存放变量值Map<String,Object> map=new HashMap<>();map.put("name","小明");map.put("language","java");String s3= StrUtil.format("你好:{name},欢迎来到{language}的世界",map);Assert.isTrue(s3.equals("你好:小明,欢迎来到java的世界"));}
}

3、集合工具

public class CollTest {@Testpublic void test1(){List<String> list=new ArrayList<String>();list.add("aa");list.add("bb");list.add("cc");//集合list是否为非空Assert.isTrue(CollUtil.isNotEmpty(list));}
}

4、日期工具

public class DateTest {@Testpublic void test1() {//返回标准的yyyy-MM-dd HH:mm:ss格式的日期字符串String now = DateUtil.now();System.out.println(now);Date date = new Date();//日期对象格式化输出String s = DateUtil.format(date, "yyyy-MM-dd");System.out.println(s);//将日期字符串解析为日期对象Date d2= DateUtil.parse("2020-01-17","yyyy-MM-dd");System.out.println(d2);}
}

5、Object对象相关工具

public class ObjectTest {@Testpublic void test1(){//对象的序列化和反序列化Student st=new Student("张三",18,"北京");//对象序列化为字节byte[] bytes= ObjectUtil.serialize(st);//将字节数据写入文件FileUtil.writeBytes(bytes,new File("d:/st.obj"));//从文件中读取字节数据byte[] bs=FileUtil.readBytes(new File("d:/st.obj"));//将字节数据放序列化为对象Student s=   ObjectUtil.unserialize(bs);System.out.println(s);//打印对象}@Testpublic void test2(){//对象深克隆 ,使用流Student s1=new Student("张三",22,"北京");Student s2= ObjectUtil.cloneByStream(s1);//改变克隆对象的属性s2.setAddress("南京");Assert.isTrue(s1!=s2);//两个对象是不同的//打印两个对象,发现各自有自己独立的属性数据。System.out.println(s1);System.out.println(s2);}
}

6、Bean工具类

public class BeanTest {@Testpublic void test1(){Person p=new Person();p.setName("王大锤");p.setAge(23);p.setHobbies(Arrays.asList("篮球","排球","游泳"));Map<String,Integer> m=new HashMap<>();m.put("chinese",88);m.put("math",89);m.put("english",90);p.setGrades(m);//类似spring的EL表达式 ,根据path表达式取对象的属性String s=  BeanUtil.getProperty(p,"hobbies[0]");System.out.println(s);Integer score= BeanUtil.getProperty(p,"grades['math']");System.out.println(score);}@Testpublic void test2(){Person p=new Person("大锤",23);//将bean转为mapMap<String,Object> m= BeanUtil.beanToMap(p);System.out.println(m);}@Testpublic void test3(){Person p1=new Person("大锤",23);Person p2=new Person();//对象的属性复制,类似于commom.lang3包中的BeanUtil.copyPropertiesBeanUtil.copyProperties(p1,p2);System.out.println(p2);}}

7、其他更多工具类,如http相关、加解密相关、文件io相关、 反射/类加载 、邮件等等不一一举例了,请参照官网

https://hutool.cn/  官网

https://hutool.cn/docs/#/  官网文档

java项目中使用hutool工具箱相关推荐

  1. Mac笔记本中是用Idea开发工具在Java项目中调用python脚本遇到的环境变量问题解决...

    问题描述: mac笔记本本身会自带几个python版本,比如python2.7版本,我没有改动mac默认的python版本,只是安装了python3.7版本. 使用Pycharm开发Python项目没 ...

  2. java聊天室小程序论文_在Java项目中利用continue与break制作一个聊天室小程序

    在Java项目中利用continue与break制作一个聊天室小程序 发布时间:2020-12-08 16:03:27 来源:亿速云 阅读:98 作者:Leah 在Java项目中利用continue与 ...

  3. java项目怎么定义异常_在Java项目中如何实现自定义异常

    在Java项目中如何实现自定义异常 发布时间:2020-11-11 15:41:32 来源:亿速云 阅读:77 作者:Leah 这篇文章将为大家详细讲解有关在Java项目中如何实现自定义异常,文章内容 ...

  4. XML在JAVA项目中的作用

    java项目中,xml文件一般都是用来存储一些配置信息 一般的编程, 多数用来存储配置信息 . 拿JDBC来说,可以把数据库连接字符串写到xml,如果要修改数据源,只需要改xml就可以了,没必要再去重 ...

  5. Redis学习笔记之二 :在Java项目中使用Redis

    成功配置redis之后,便来学习使用redis.首先了解下redis的数据类型. Redis的数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set( ...

  6. redis java驱动_Redis学习笔记之二 :在Java项目中使用Redis

    成功配置redis之后,便来学习使用redis.首先了解下redis的数据类型. Redis的数据类型 Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set( ...

  7. Ant在Java项目中的使用(一眼就看会)

    参考:http://www.cnblogs.com/zhengqiang/p/5557155.html Ant是跨平台的构建工具,它可以实现项目的自动构建和部署等功能.在本文中,主要让读者熟悉怎样将A ...

  8. 在Java项目中整合Scala

    Scala是一个运行在Java JVM上的面向对象的语言.它支持函数编程,在语法上比Java更加灵活,同时通过Akka库,Scala支持强大的基于Actor的多线程编程.具有这些优势,使得我最近很想在 ...

  9. java项目中的classpath

    在java项目中,你一定碰到过classpath,通常情况下,我们是用它来指定配置/资源文件的路径.在刚开始学习的时候,自己也糊里糊涂,但是现在,是时候弄清楚它到底是指什么了. 顾名思义,classp ...

最新文章

  1. Error in ** : incorrect number of dimensions
  2. ASP.NET4.0中客户端ID的生成
  3. 活体检测很复杂?仅使用opencv就能实现!(附源码)
  4. C++ open 打开文件(含打开模式一览表)
  5. Zookeeper概述、特点、数据模型
  6. .Net/C#中Cache的用法
  7. 页面增加html,为静态页面HTML增加session功能
  8. 兰州交通大学计算机科学与技术排名,兰州交通大学怎么样 全国排名是多少
  9. 日语学习-多邻国-时间
  10. python re爬虫_Python爬虫实践 —— Regular Expressions Python re模块
  11. mac学python_新手小白学Python必备编程利器Pycharm快捷键大全(Win+Mac)
  12. DELL服务器常见报错信息
  13. Codeforces 57C Array dp暴力找到规律
  14. 融入常识知识的生成式对话摘要
  15. Fiddler原理~知多少?
  16. Git和Github详细教程
  17. xp系统 护眼模式
  18. 汇编语言 XOR 指令
  19. ad域 禁用账号_大量AD域帐号自动被锁定
  20. HDOJ1430魔板

热门文章

  1. SOP、GMP,ECR/ECN是什么意思
  2. 苹果电脑如何启动外置硬盘的linux系统,苹果MAC教程:Mac如何在外置硬盘上安装Linux...
  3. 网上支付平台接口使用总结
  4. Blender Game Engine (BGE) 是 Blender 3D内置游戏引擎
  5. RISC-V常用指令学习笔记
  6. 【转载】SQL 关于apply的两种形式cross apply 和 outer apply
  7. 每次启动虚拟机都要重置网卡设置,否则无法上网,很烦
  8. 郑州大学 计算机组成原理 67林67楠 ppt,郑州大学计算机组成原理.ppt
  9. 货币政策的目标、工具、中性利率、货币乘数及对宏观经济的影响分析
  10. 李莉娜非诚勿扰三拒男嘉宾 网友表痛惜