GithubHelp home page GithubHelp logo

sunxianchao / hutool Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dromara/hutool

0.0 1.0 0.0 782 KB

一个类似于jodd和Apache commons lang的Java工具类

License: Apache License 2.0

Shell 0.05% Java 99.95%

hutool's Introduction

hutool

![封面](http://img.hb.aicdn.com/61f84090279e1aaf49a11301dea2b3f453d2ad9028aaf4-R12vgs_fw658)

一个Java基础工具类,类似于joddApache commons lang的Java工具类。

简介

Hutool是一个工具包,我日常写项目的一些积累,参考了一些Apache Commons LangJODD里的一些写法,不过大部分还是自己写的,希望你看了之后会有所启发或者能给你工作中带来帮助。说实话我现在写代码已经离不开自己这个工具包了,叫做Hutool也有“糊涂”之意,表示很多功能糊里糊涂就实现了。好吧,言归正传,说说里面一些好玩的方法(工具包中大部分是一些静态方法)。

设计哲学

Hutool的设计**是尽量减少重复的定义,让项目中的util这个package尽量少,总的来说有如下的几个**:

  1. 减少代码录入。
  2. 常用功能组合起来,实现一个功能只用一个方法。
  3. 简化Java API,原来需要几个类实现的功能我也只是用一个类甚至一个方法(想想为了个线程池我得new多少类……而且名字还不好记)
  4. 对于null的处理我没有可以回避,而是采取“你给我null我也给你返回null”这种**,尽量不在工具类里抛空指针异常(这**稍猥琐啊……直接把包袱扔给调用者了,好吧,谁让你给我null了)。
  5. 一些固定使用的算法收集到一起,不用每次问度娘了(例如Base64算法、MD5、Sha-1,还有Hash算法)
  6. 借鉴Python的很多小技巧(例如列表切片,列表支持负数index),让Java更加好用。
  7. 非常好用的ORM框架,同样借鉴PythonDjango框架,以键值对的实体代替对象实体,大大降低数据库访问的难度(再也不用像Hibernate一样配置半天ORM Mapping了)。
  8. 极大简化了文件、日期的操作,尤其是相对路径和绝对路径问题做了非常好的封装,降低学习成本。

安装

Maven

在项目的pom.xml的dependencies中加入以下内容:

<dependency>
    <groupId>com.xiaoleilu</groupId>
    <artifactId>hutool</artifactId>
    <version>X.X.X</version>
</dependency>

注:工具包的版本可以通过 http://search.maven.org/ 搜索hutool找到项目。

非Maven项目

可以从http://search.maven.org/ 搜索hutool找到项目,点击对应版本,下面是相应的Jar包,导入即可使用。

最新的2.13.1版本Jar下载地址:http://search.maven.org/remotecontent?filepath=com/xiaoleilu/hutool/2.13.1/hutool-2.13.1.jar

Java doc下载地址:http://search.maven.org/remotecontent?filepath=com/xiaoleilu/hutool/2.13.1/hutool-2.13.1-javadoc.jar

文档请移步

Hutool Wiki @ osc

Hutool Wiki @ github

hutool's People

Contributors

looly avatar z-starts avatar

Watchers

Damion Fahey avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.