摘自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. fastAdmin进阶

    基本知识流程一栏链接 bootstrapTable fastadmin系统配置(符内置规则): fastadmin默认的controller已实现的方法 一张图解析fastadmin的表格: fast ...

  2. Go版GTK:环境搭建(windows)

    Go版GTK:环境搭建(windows) https://blog.csdn.net/tennysonsky/article/details/79221507 所属专栏: Go语言开发实战     1 ...

  3. Xamarin Essentials教程实现数据的传输功能实例

    Xamarin Essentials教程实现数据的传输功能实例 [示例1-1]以下将实现数据的传输功能.代码如下: public async Task ShareUri(string text, st ...

  4. vue中的组件

    一.自定义组件1.组件命名   A.dom模板在HTML模板中始终使用kebab-case命名组件 <kebab-cased-component> </kebab-cased-com ...

  5. [mongoDB]PyMongo Cursor Not Found Error

    Python跑一个aggregate脚本,报错:pymongo.errors.CursorNotFound: Cursor not found, cursor id: 35411720832 搜了下原 ...

  6. BZOJ.4052.[Cerc2013]Magical GCD(思路)

    BZOJ \(Description\) 给定\(n\)个数的序列\(a_i\).求所有连续子序列中,序列长度 × 该序列中所有数的gcd 的最大值. \(n\leq10^5,\ a_i\leq10^ ...

  7. mysql复习

    1.数据库操作 CREATE DATABASE 数据库名 charset utf8; 查看数据库 show databases; show create database db1; select da ...

  8. Moo University - Financial Aid [POJ2010] [堆]

    题意: 在C头牛里选N头牛,每头牛需要花掉一定经费ai才能得到一定得bi分,在不超过经费F的情况下,使得N头牛的得分中位数最大.(1 <= N <= 19,999,奇数) (N <= ...

  9. yii2 basic版基础部分

    Yii2.0 basic 版 yii 官方网站:http://www.yiiframework.com/ 一.安装: 1.下载地址:http://www.yiichina.com/download 从 ...

  10. Celery框架

    在学习Celery之前,我先简单的去了解了一下什么是生产者消费者模式. 生产者消费者模式 在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是 ...