摘自3.1.1版本作者发布原话,当时看到有点说不上的情绪,为作者的坚持、热爱点个赞。

已经想不起来是怎样结识 Hutool 的,但 Hutool 伴随几个项目的推进,获得了同事一致好评。

没经过实践和检验的东西,自己也不会轻易推荐出来,Hutool 确实很优秀很强大,我觉得是时候抽时间安利一波。

好东西应该拿出来分享,让更多的程序员兄弟姐妹们收益,减少工作量将更多的时间投入其他地方。

记得自己在闲暇整理和组织过一个类似的类库:【干货分享】通用工具类 ,自我遇到 Hutool 后,这项目已被冷落很长时间。

来描述下我推荐 Hutool 几个最主要的原因:

首先 Hutool 对自己的定位很清晰,做用户的超级工具,依赖其他类库基本上都是可选的。

例如你需要对 Excel、Word 进行处理,那么你项目中势必会依赖 POI ,然后直接使用 Hutool-Poi 减低代码量即可。

Hutool 除了对特定内容需要引入可选依赖以外,绝大数都是在 JDK 基础上进行的封装,对项目的污染性降低到了最低,几乎不可见的地步。

简洁的调用参数、良好的设计模式、主要功能覆盖全面的测试用例、详尽的中文注释,替代 common-XX 系列基本上是稳稳的。

其次 Hutool 组织非常合理,由 maven 分很多小模块进行构建。

根据自身项目需求可以选择引入其中的一个或者多个模块,甚至是粘贴其中独立的类或者方法。

相比只需一个方法就要引入一个类库的做法要舒服的多,对那些喜欢简洁的编程者也不失为一个好的选择,

最后 Hutool 的生态圈扩张的非常广泛,有全国各地的小伙伴在项目中使用,反馈 BUG 、提出更好的设计意见。

前几天发现 Hutool 已评为开源中国的 MVP 项目,作为开源类库能走到今天的地步,我觉得已经非常不错了。

好的东西是岁月沉淀下来的,不是某些人嘴里忽悠的概念、炒作的资本。

我上述描述可能难免有遗漏和错误,如果你想更好的了解 Hutool。

主页地址:http://hutool.cn/

文档:http://hutool.mydoc.io/

我和作者只是聊过一两次,没有任何关系,只是想将好东西分享给大家,独乐乐不如众乐乐。

【推荐】Hutool 的通用工具类库的更多相关文章

  1. 安利一波那个叫做 hutool 的通用工具类库

    摘自3.1.1版本作者发布原话,当时看到有点说不上的情绪,为作者的坚持.热爱点个赞. 已经想不起来是怎样结识 Hutool 的,但 Hutool 伴随几个项目的推进,获得了同事一致好评. 没经过实践和 ...

  2. (19/24) webpack实战技巧:推荐使用的第三方类库打包方法

    在日常的开发中,总避免不了引入第三方的框架,比如常用的JQuery,此节我们来学习一下如何优雅并正确的用webpack引入第三方库. 这里我们以第三方框架JQuery为例: 1.在入口文件中引入 1. ...

  3. .Net使用Redis详解之ServiceStack.Redis(七)

    序言 本篇从.Net如何接入Reis开始,直至.Net对Redis的各种操作,为了方便学习与做为文档的查看,我做一遍注释展现,其中会对list的阻塞功能和事务的运用做二个案例,进行记录学习. Redi ...

  4. Android App的设计架构:MVC,MVP,MVVM与架构经验谈

    相关:http://www.cnblogs.com/wytiger/p/5996876.html 和MVC框架模式一样,Model模型处理数据代码不变在Android的App开发中,很多人经常会头疼于 ...

  5. CommonJS Promises/A规范

    本文来自四火哥的翻译 CommonJS是一组javascript编程规范,而promise是其中之一. 简而言之,promises是一种令代码的异步行为变得更加优雅的软件抽象.在基本的定义中,代码可能 ...

  6. ASP.NET防御XSS跨站攻击

    目前做ASP.NET项目的时候就有遇到过“用户代码未处理HttpRequestValidationException:从客户端***中检测到有潜在危险的 Request.Form/Request.Qu ...

  7. Atitit.javascript 实现类的方式原理大总结

    Atitit.javascript 实现类的方式原理大总结 1. 实现类的式::构造方法方式:原型方式:构造方法+原型的混合方式 1 2. 原型方式(function mode)经典式..实现属性推荐 ...

  8. EntityFrameWork实现部分字段获取和修改(含源码)

    EntityFrameWork类库,是微软推出的ORM组件,它是基于Ado.Net的,个人感觉还是非常 好用的.以下介绍的2个功能点分别是部分字段更新和获取 解决部分字段Update.本方案采用仓储模 ...

  9. .Net使用Redis详解之ServiceStack.Redis(七) 转载https://www.cnblogs.com/knowledgesea/p/5032101.html

    .Net使用Redis详解之ServiceStack.Redis(七)   序言 本篇从.Net如何接入Reis开始,直至.Net对Redis的各种操作,为了方便学习与做为文档的查看,我做一遍注释展现 ...

随机推荐

  1. 020100——00002_OS库

    OS 库中文文档:https://yiyibooks.cn/xx/python_352/library/os.html OS 库英文文档:https://docs.python.org/3/libra ...

  2. Trident的过滤操作

    1.过滤操作 只是判断某个tuple是否保留 无需跨网络,无需跨分区 不会改变tuple的结构,只是改变tuple的数量 2.需求 过滤掉不是订单的tuple. 其中订单中包含“IBEIfeng.gi ...

  3. IDEA创建Web项目(maven)

    第一步:创建项目 第二步:使用maven创建,并选择jdk 第三步:修改项目名称 第四步:选择自动导入依赖(很重要!!) 第五步:添加核心依赖和打包 第六步:编译一下 第七步:配置web容器(这里是用 ...

  4. java分页实现

    虽然现在有很多好用的框架,对分页进行支持,很简单的就把分页的效果做出来,但是如果自己手写是一个怎样的流程的?今天就来说说它,手动实现分页效果. 一.分页的思路 首先我们得知道写分页代码时的思路,保持思 ...

  5. spring mvc注解版01

    spring mvc是基于servlet实现的在spring mvc xml版中已经说过了,注解版相较于xml版更加简洁灵活. web项目的jar包: commons-logging-1.1.3.ja ...

  6. ddctf2019--web部分writeup

    0x00前言 上周五开始的DDCTF 2019,整个比赛有一周,题目整体来说感觉很不错,可惜我太菜了,做了4+1道题,还是要努力吧 0x01 web 滴~ 打开看着url,就像文件包含 文件名1次he ...

  7. Spring:获取容器中的Bean

    某些情况下我们要获取 IOC 容器中指定注解.类型.名字的 Bean 要获取 IOC 容器中指定条件的 Bean 可以通过 ApplicationContext 相应的方法 @Autowired pr ...

  8. AGC 010D.Decrementing(博弈)

    题目链接 \(Description\) 给定\(n\)个数\(A_i\),且这\(n\)个数的\(GCD\)为\(1\).两个人轮流进行如下操作: 选择一个\(>1\)的数使它\(-1\). ...

  9. Java并发编程(九)-- 进程饥饿和公平锁

    上一章已经提到“如果一个进程被多次回滚,迟迟不能占用必需的系统资源,可能会导致进程饥饿”,本文我们详细的介绍一下“饥饿”和“公平”. Java中导致饥饿的原因 在Java中,下面三个常见的原因会导致线 ...

  10. Change position in observation

    HTML <!DOCTYPE HTML> <HTML> <head> <meta charset=" UTF-8"> <tit ...