网站首页 > 博客文章 正文
简介
Hutool是一个工具包,是作者在日常写项目的一些积累,希望你看了之后会有所启发或者能给你工作中带来帮助。这个工具包叫做Hutool也有“糊涂”之意,意为很多时候我们并不需要关注细节,专注业务。
设计哲学
Hutool的设计思想是尽量减少重复的定义,让项目中的util这个package尽量少,总的来说有如下的几个思想:
减少代码录入。
常用功能组合起来,实现一个功能只用一个方法。
简化Java API,原来需要几个类实现的功能我也只是用一个类甚至一个方法(想想为了个线程池我得new多少类……而且名字还不好记)
对于null的处理我没有可以回避,而是采取“你给我null我也给你返回null”这种思想,尽量不在工具类里抛空指针异常(这思想稍猥琐啊……直接把包袱扔给调用者了,好吧,谁让你给我null了)。
一些固定使用的算法收集到一起,不用每次问度娘了(例如Base64算法、MD5、Sha-1,还有Hash算法)
借鉴Python的很多小技巧(例如列表切片,列表支持负数index),让Java更加好用。
非常好用的ORM框架,同样借鉴Python的Django框架,以键值对的实体代替对象实体,大大降低数据库访问的难度(再也不用像Hibernate一样配置半天ORM Mapping了)。
极大简化了文件、日期的操作,尤其是相对路径和绝对路径问题做了非常好的封装,降低学习成本。
功能
一个Java基础工具类,对文件、流、加密解密、转码、正则、线程、XML等JDK方法进行封装,组成各种Util工具类,同时提供以下组件:
布隆过滤
缓存
克隆接口
类型转换
日期处理
数据库ORM(基于ActiveRecord思想)
基于DFA有限自动机的多个关键字查找
HTTP客户端
IO和文件
有用的一些数据结构
日志
反射代理类的简化(AOP切面实现)
Setting(一种扩展Properties的配置文件)
System(JVM和系统信息等)
WatchService的封装(文件变动监控)
XXXUtil各种有用的工具类
使用
在项目的pom.xml的dependencies中加入以下内容:
<dependency>
<groupId>com.xiaoleilu</groupId>
<artifactId>hutool-all</artifactId>
<version>3.0.1</version>
</dependency>
非Maven项目可以从
http://search.maven.org/
搜索hutool找到项目,点击对应版本,下面是相应的Jar包,导入即可使用。
猜你喜欢
- 2024-11-01 【SpringBoot系列教程五】一文学会SpringSecurity
- 2024-11-01 Spring Security 从入门到实战(前后端分离)
- 2024-11-01 实战!Spring Boot 整合 阿里开源中间件 Canal 实现数据增量同步
- 2024-11-01 Mybatis-Plus中的代码生成器超详细解析!完整配置
- 2024-11-01 springcloud实践二:gateway网关详解
- 2024-11-01 Redis 中 keys 命令带来的线上性能问题,怎么解决?
- 2024-11-01 JVS快速开发框架产品说明书(V2.1.3)
- 2024-11-01 国内最火的10款Java开源项目,都是国人开发,CMS居多
- 2024-11-01 超级好用的Java 工具类库GitHub 星标 10k+你有在用吗?
- 2024-11-01 “实用”的JAVA开发工具类库(java常用开发平台工具)
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)