介绍 数组工具中的方法在2.x版本中都在CollectionUtil中存在,3.x之后版本(包括4.x版本)中拆分出来作为ArrayUtil。数组工具类主要针对原始类型数组和泛型数组相关方案进行封装。 数组工具类主要是解决对象数组(包括包装类型数组)和原始类型数组使用方法不统一的问题。 方法 判空 数组的判空类似于字符串的判空,标准是null或者数组长度为0,ArrayUtil中封装了针对原始类型
由来 数字工具针对数学运算做工具性封装 使用 加减乘除 NumberUtil.add 针对数字类型做加法 NumberUtil.sub 针对数字类型做减法 NumberUtil.mul 针对数字类型做乘法 NumberUtil.div 针对数字类型做除法,并提供重载方法用于规定除不尽的情况下保留小数位数和舍弃方式。 以上四种运算都会将double转为BigDecimal后计算,解决float和do
介绍 枚举(enum)算一种“语法糖”,是指一个经过排序的、被打包成一个单一实体的项列表。一个枚举的实例可以使用枚举项列表中任意单一项的值。枚举在各个语言当中都有着广泛的应用,通常用来表示诸如颜色、方式、类别、状态等等数目有限、形式离散、表达又极为明确的量。Java从JDK5开始,引入了对枚举的支持。 EnumUtil 用于对未知枚举类型进行操作。 方法 首先我们定义一个枚举对象: //定义枚举
由来 分页工具类并不是数据库分页的封装,而是分页方式的转换。在我们手动分页的时候,常常使用页码+每页个数的方式,但是有些数据库需要使用开始位置和结束位置来表示。很多时候这种转换容易出错(边界问题),于是封装了PageUtil工具类。 使用 transToStartEnd 将页数和每页条目数转换为开始位置和结束位置。 此方法用于不包括结束位置的分页方法。 例如: 页码:0,每页10 -> [0, 1
介绍 Java的反射机制,可以让语言变得更加灵活,对对象的操作也更加“动态”,因此在某些情况下,反射可以做到事半功倍的效果。Hutool针对Java的反射机制做了工具化封装,封装包括: 获取构造方法 获取字段 获取字段值 获取方法 执行方法(对象方法和静态方法) 使用 获取某个类的所有方法 Method[] methods = ReflectUtil.getMethods(ExamInfoDict
由来 在我们的日常使用中,有些方法是针对Object通用的,这些方法不区分何种对象,针对这些方法,Hutool封装为ObjectUtil。 方法 ObjectUtil.equal 比较两个对象是否相等,相等需满足以下条件之一: obj1 == null && obj2 == null obj1.equals(obj2) ObjectUtil.length 计算对象长度,如果是字符串调用其lengt
包含内容 此包中的工具类为未经过分类的一些工具类,提供一些常用的工具方法。 此包中根据用途归类为XXXUtil,提供大量的工具方法。在工具类中,主要以类方法(static方法)为主,且各个类无法实例化为对象,一个方法是一个独立功能,无相互影响。 关于工具类的说明和使用,请参阅下面的章节。
介绍 ResourceUtil提供了资源快捷读取封装。 使用 ResourceUtil中最核心的方法是getResourceObj,此方法可以根据传入路径是否为绝对路径而返回不同的实现。比如路径是:file:/opt/test,或者/opt/test都会被当作绝对路径,此时调用FileResource来读取数据。如果不满足以上条件,默认调用ClassPathResource读取classpath中
由来 IO工具类的存在主要针对InputStream、OutputStream、Reader、Writer封装简化,并对NIO相关操作做封装简化。总体来说,Hutool对IO的封装,主要是工具层面,我们努力做到在便捷、性能和灵活之间找到最好的平衡点。 方法 拷贝 流的读写可以总结为从输入流读取,从输出流写出,这个过程我们定义为拷贝。这个是一个基本过程,也是文件、流操作的基础。 以文件流拷贝为例:
Hitting npm run build all the time will get boring eventually. Fortunately we can work around that quite easily. Let's set up webpack-dev-server. 如果需要一直输入 npm run build 确实是一件非常无聊的事情,幸运的是,我们可以把让他安静的运行,
概述 本文描述了 Xtensa Development Tools 的安装。 安装工具链 1. 准备工作 由于Xplorer没有64bit版本,如果你的操作系统是Linux 64bit的,需要先安装32bit的兼容包。 以下操作在Ubuntu版本14.04.4 LTS,内核版本4.2.0-27-generic上验证成功 sudo dpkg --add-architecture i386 sudo
1: ASR语言模型在线训练工具 2: TTS在线语音合成工具
概述 本文描述了 Xtensa Development Tools 的安装。 安装工具链 1. 准备工作 由于Xplorer没有64bit版本,如果你的操作系统是Linux 64bit的,需要先安装32bit的兼容包。 以下操作在Ubuntu版本14.04.4 LTS,内核版本4.2.0-27-generic上验证成功 sudo dpkg --add-architecture i386 sudo
Burp Suite Knockpy HostileSubBruteforcer sqlmap Nmap Eyewitness Shodan What CMS Nikto Recon-ng idb Wireshark Bucket Finder Google Dorks IPV4info.com JD GUI Mobile Security Framework Firefox Plugins Fo
最近一直在看Mybatis的源码。看了有个三四遍了吧,总体的构造是了解了,代码也基本上算是熟悉了, 但是总感觉差点什么,思来想去应该就是对整个代码的归纳总结还不到位,源码看了,也会了,但是要说又说不出来。 因此就想着写个笔记,记录一下吧,自己也好好总结归纳一下。 工欲善其事必先利其器,学习mybatis的源码需要依赖一些工具,比如数据库,IDE工具等。 数据库因为个人习惯的原因采用MySql,ID