public final class Tool
extends java.lang.Object
| 限定符和类型 | 类和说明 |
|---|---|
static class |
Tool.BThread
线程处理工具
|
class |
Tool.Calc
表达式计算器
|
static class |
Tool.Caller |
class |
Tool.Compressor
压缩工具
|
class |
Tool.Dater
日期处理工具
|
class |
Tool.DateUtil |
class |
Tool.FileOperate
文件操作工具
|
class |
Tool.Format
字符串处理、数组转字符串、字符串转数据等工具
|
static class |
Tool.Html
HTML代码处理工具
|
class |
Tool.Json
JSON字符串处理工具
|
class |
Tool.Log
日志处理工具
|
class |
Tool.MD5
MD5加密类
|
class |
Tool.Path
文件路径处理
|
class |
Tool.Pinyin
拼音工具,可以将指定汉字转为拼音或拼音首字母
|
class |
Tool.Property
Property处理工具
|
class |
Tool.RSA
RSA加密类
|
class |
Tool.Security
字符串安全工具
|
class |
Tool.Util
常用工具
|
class |
Tool.Value
值处理工具,单一值,最大值,最小值等
|
static class |
Tool.VerifyCode
图片验证码生成工具
|
class |
Tool.Xml
XML操作工具
|
class |
Tool.Yaml
YAML类型处理工具
|
| 限定符和类型 | 字段和说明 |
|---|---|
static java.util.regex.Pattern |
PTN_NAME |
static java.util.regex.Pattern |
PTN_NAME_EX |
static java.util.regex.Pattern |
PTN_NAME_EX2 |
static java.util.regex.Pattern |
TUOMIN |
| 构造器和说明 |
|---|
Tool() |
| 限定符和类型 | 方法和说明 |
|---|---|
static bee.tool.CfgType |
asType(java.lang.String content)
根据内容获取内容格式(XML,YMAL,JSON,Properties,HTML,TEXT;)
|
static byte[] |
base64ToBytes(java.lang.String encoded) |
static java.io.InputStream |
byte2InputStream(byte[] bytes)
功能描述: byte数组转 InputStream
|
static java.lang.String |
bytesToBase64(byte[] bytes) |
static <T> T |
bytesToObject(byte[] bytes)
字节数组转对象
|
static java.lang.Object |
callMethod(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object... params) |
static java.lang.Object |
callMethod(java.lang.String className,
java.lang.String name,
java.lang.Object... params) |
static <T> java.lang.Object |
callMethod(T t,
java.lang.reflect.Method method,
java.lang.Object... params) |
static <T> java.lang.Object |
callMethod(T t,
java.lang.String name,
java.lang.Object... params) |
static java.io.InputStream |
cloneInputStream(java.io.InputStream input) |
static java.lang.Object |
convert(java.lang.Object value,
java.lang.Class<?> type)
值转换成对应类型的值,如果value为空,type为基础类型的话,转换为基础类型对应的初始值,如:int类型转换为0,Integer类型转换为null
|
static boolean |
exists(java.io.File file) |
static boolean |
existsFile(java.lang.String path) |
static java.lang.reflect.Field |
findDeclaredField(java.lang.Class<?> clazz,
java.lang.String name) |
static java.lang.Class<?> |
forClass(java.lang.String classname)
asdfasdf
asdfasdf
|
static java.lang.Object |
format(java.lang.Object object,
java.lang.String formatter)
对Date,String进行格式化
1、日期:
字母日期或时间元素表示示例
GEra 标志符TextAD
y年Year1996; 96
M年中的月份MonthJuly; Jul; 07
w年中的周数Number27
W月份中的周数Number2
D年中的天数Number189
d月份中的天数Number10
F月份中的星期Number2
E星期中的天数TextTuesday; Tue
aAm/pm 标记TextPM
H一天中的小时数(0-23)Number0
k一天中的小时数(1-24)Number24
Kam/pm 中的小时数(0-11)Number0
ham/pm 中的小时数(1-12)Number12
m小时中的分钟数Number30
s分钟中的秒数Number55
S毫秒数Number978
z时区General time zonePacific Standard Time; PST; GMT-08:00
Z时区RFC 822 time zone-0800
2、String:json
|
static java.lang.String |
formatDate(java.util.Date date,
java.lang.String formatter)
格式化日期
|
static java.lang.Class |
forName(java.lang.String className) |
static Tool.Caller |
getCaller()
获取上一级调用者Class
|
static Tool.Caller |
getCaller(java.lang.Class<?> base) |
static Tool.Caller |
getCaller(int layer)
获取调用者Class
|
static java.util.List<Tool.Caller> |
getCallers(java.lang.Class<?> from,
java.lang.Class<?> to)
获取调用者列表
|
static java.util.List<Tool.Caller> |
getCallers(java.lang.Class<?> from,
int count)
获取调用者列表
|
static java.util.List<Tool.Caller> |
getCallers(int from,
java.lang.Class<?> to)
获取调用者列表
|
static java.util.List<Tool.Caller> |
getCallers(int from,
int count)
获取调用者列表
|
static java.lang.reflect.Field |
getDeclaredField(java.lang.Class<?> clazz,
java.lang.String name) |
static <T> java.lang.Object |
getDeclaredField(T t,
java.lang.reflect.Field field) |
static <T> java.lang.Object |
getDeclaredField(T t,
java.lang.String fieldName) |
static java.util.Map<java.lang.String,java.lang.reflect.Field> |
getDeclaredFields(java.lang.Class<?> clazz)
获取javabean中的所有属性,含父类中的
|
static java.lang.Object |
getField(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object obj) |
static java.lang.String |
getFolder(java.lang.Class<?> clazz) |
static int |
getIUID()
短整形UUID
|
static java.lang.String |
getLocalIP()
获取本地IP,多个网卡ip地址用逗号“,”隔开
|
static long |
getLUID()
16位长整形UUID
|
static java.lang.reflect.Method |
getMethod(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Class<?>... clazzs) |
static java.lang.String |
getPath(java.lang.Class<?> clazz) |
static int |
getSize(java.io.InputStream is)
获取流中的数据大小
|
static java.lang.String |
getUUID()
生成全局唯一32位UUID
|
static java.lang.String |
hexStr2Str(java.lang.String s)
十六进制转换成为string类型字符串
|
static java.lang.String |
humpName(java.lang.String name)
将name转为驼峰命名方式
|
static byte[] |
inputStream2Byte(java.io.InputStream inputStream)
功能描述:InputStream转Byte
|
static byte[] |
inputStream2Byte(java.io.InputStream inputStream,
int length) |
static byte[] |
inputStream2Byte(java.io.InputStream inputStream,
long skiplength,
int length) |
static boolean |
isBaseType(java.lang.Class<?> cls)
判断对象是否为基础类型
|
static <T> boolean |
isBaseType(T obj)
判断对象是否为基础类型
|
static boolean |
isCaller(java.lang.Class<?> clazz) |
static boolean |
isDateType(java.lang.Class<?> cls)
判断对象是否为日期类型
|
static <T> boolean |
isDateType(T obj)
判断对象是否为日期类型
|
static boolean |
isEmpty(java.lang.Object obj)
判断Object对象是否为空,其中Map,Collection等对象没有元素就表示为空
|
static boolean |
isEmpty(java.lang.String str)
判断字符串是否为空,null或空字符串""
|
static boolean |
isEmptys(java.lang.Object... obj)
判断Object对象是否为空,只要有一个对象空返回true,其中Map,Collection等对象没有元素就表示为空
|
static boolean |
isEmptys(java.lang.String... strings)
只要有一个为空就返回true
|
static <T> boolean |
isNumber(T obj) |
static boolean |
isNumeric(java.lang.String str)
判断字符串是不是纯数字
|
static boolean |
isWindows() |
static boolean |
noEmpty(java.lang.Object str)
判断Object对象是否不为空,其中Map,Collection等对象没有元素就表示为空
|
static boolean |
noEmptys(java.lang.Object... strings)
判断Object对象是否不为空,只要有其中一个对象为空都返回false,其中Map,Collection等对象没有元素就表示为空
|
static boolean |
noEmptys(java.lang.String... strings)
判断Object对象是否不为空,其中Map,Collection等对象没有元素就表示为空
|
static <T> byte[] |
objectToBytes(T obj)
对象转字节数组
|
static <T extends java.lang.Number> |
percent(T a,
T b)
求两数的百分数,既a除b乘以100,保留两小数位
|
static <T extends java.lang.Number> |
percent(T a,
T b,
int point)
求两数的百分数,既a除b乘以100,保留指定小数位
|
static java.util.Map<java.lang.String,java.lang.String> |
queryStrToMap(java.lang.String queryStr) |
static double |
round(double min,
double max)
获取一个区间的随机数
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
|
static float |
round(float min,
float max)
获取一个区间的随机数
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
|
static int |
round(int min,
int max)
获取一个区间的随机数
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
|
static long |
round(long min,
long max)
获取一个区间的随机数
(数据类型)(最小值+Math.random()*(最大值-最小值+1))
|
static <T> java.util.Set<T> |
setCross(java.util.Set<T>... sets)
多个Set求交集
|
static <T> void |
setDeclaredField(T t,
java.lang.reflect.Field field,
java.lang.Object value) |
static <T> void |
setDeclaredField(T t,
java.lang.String fieldName,
java.lang.Object value) |
static <T> java.util.Set<T> |
setDiff(java.util.Set<T>... sets)
多个Set求差集
|
static void |
setField(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object value) |
static <T> void |
setField(T t,
java.lang.String fieldName,
java.lang.Object value) |
static <T> java.util.Set<T> |
setUnion(java.util.Set<T>... sets)
多个Set求并集
|
static void |
sleep(long millis)
睡眠一段时间
|
static java.lang.String |
str2HexStr(java.lang.String str)
字符串转换成十六进制字符串
|
static boolean |
telnet(java.lang.String host,
int port)
用Telnet命令测试对应IP下的端口是否可用
|
static <T,E extends java.util.Collection<T>> |
toArray(E coll)
将集合转为数组
|
static java.lang.String |
toCamelCaseName(java.lang.String underline_name)
将下划线命名转为驼峰命名
|
static long |
toLong(java.lang.String s,
int radix) |
static java.lang.String |
toRadix(long i,
int radix)
十进制转为其他进制
|
static java.lang.String |
toUnderlineName(java.lang.String camelCaseName)
将驼峰命名转为下划线命名
|
static java.util.UUID |
toUUID(java.lang.String uuid) |
static java.lang.String |
toWeekCN(int num)
数字转星期几,0-日,其他转为大写数字,[0,6]
|
static java.lang.String |
tuomin(java.lang.String str,
java.lang.String format)
通用脱敏工具
|
static java.lang.String |
urlDecode(java.lang.String url)
使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。
|
static java.lang.String |
urlDecode(java.lang.String url,
java.lang.String encoding)
使用指定的编码机制对 application/x-www-form-urlencoded 字符串解码。
|
static java.lang.String |
urlEncode(java.lang.String url)
使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式。
|
static java.lang.String |
urlEncode(java.lang.String url,
java.lang.String encoding)
使用指定的编码机制将字符串转换为 application/x-www-form-urlencoded 格式。
|
public static final java.util.regex.Pattern TUOMIN
public static final java.util.regex.Pattern PTN_NAME
public static final java.util.regex.Pattern PTN_NAME_EX
public static final java.util.regex.Pattern PTN_NAME_EX2
public static java.lang.String getUUID()
public static long getLUID()
public static int getIUID()
public static java.util.UUID toUUID(java.lang.String uuid)
public static boolean telnet(java.lang.String host,
int port)
host - -主机地址(IP或域名)port - -端口号public static java.lang.String getLocalIP()
public static boolean exists(java.io.File file)
public static boolean existsFile(java.lang.String path)
public static byte[] inputStream2Byte(java.io.InputStream inputStream)
inputStream - 输入流public static byte[] inputStream2Byte(java.io.InputStream inputStream,
int length)
public static byte[] inputStream2Byte(java.io.InputStream inputStream,
long skiplength,
int length)
public static java.io.InputStream byte2InputStream(byte[] bytes)
bytes - byte数组public static java.io.InputStream cloneInputStream(java.io.InputStream input)
public static int getSize(java.io.InputStream is)
is - -InputStreampublic static <T> byte[] objectToBytes(T obj)
T - -obj - -public static <T> T bytesToObject(byte[] bytes)
T - -bytes - -public static java.lang.String bytesToBase64(byte[] bytes)
public static byte[] base64ToBytes(java.lang.String encoded)
public static bee.tool.CfgType asType(java.lang.String content)
content - -public static java.lang.Object callMethod(java.lang.String className,
java.lang.String name,
java.lang.Object... params)
public static java.lang.Object callMethod(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object... params)
public static <T> java.lang.Object callMethod(T t,
java.lang.String name,
java.lang.Object... params)
public static <T> java.lang.Object callMethod(T t,
java.lang.reflect.Method method,
java.lang.Object... params)
public static <T> void setField(T t,
java.lang.String fieldName,
java.lang.Object value)
public static void setField(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object value)
public static java.lang.Object getField(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Object obj)
clazz - 类name - 属性名称obj - -obj为clazz对应的实例,当obj为空时获取静态属性值public static java.lang.reflect.Method getMethod(java.lang.Class<?> clazz,
java.lang.String name,
java.lang.Class<?>... clazzs)
public static <T> java.lang.Object getDeclaredField(T t,
java.lang.String fieldName)
public static <T> java.lang.Object getDeclaredField(T t,
java.lang.reflect.Field field)
public static <T> void setDeclaredField(T t,
java.lang.String fieldName,
java.lang.Object value)
public static java.lang.Object convert(java.lang.Object value,
java.lang.Class<?> type)
value - 初始值type - 需要转换的类型public static <T> void setDeclaredField(T t,
java.lang.reflect.Field field,
java.lang.Object value)
public static java.lang.reflect.Field getDeclaredField(java.lang.Class<?> clazz,
java.lang.String name)
public static java.util.Map<java.lang.String,java.lang.reflect.Field> getDeclaredFields(java.lang.Class<?> clazz)
clazz - -public static java.lang.reflect.Field findDeclaredField(java.lang.Class<?> clazz,
java.lang.String name)
public static java.lang.Class<?> forClass(java.lang.String classname)
asdfasdf
asdfasdf
classname - -public static java.lang.String humpName(java.lang.String name)
name - -public static Tool.Caller getCaller()
public static java.lang.String getPath(java.lang.Class<?> clazz)
public static java.lang.String getFolder(java.lang.Class<?> clazz)
public static boolean isCaller(java.lang.Class<?> clazz)
public static Tool.Caller getCaller(int layer)
layer - -调用层级,0:表示父节点,1:爷节点,2:……public static Tool.Caller getCaller(java.lang.Class<?> base)
public static java.util.List<Tool.Caller> getCallers(int from, int count)
from - -从第几个调用者开始,0表示从自己本身开始count - -获取多少个调用者public static java.util.List<Tool.Caller> getCallers(java.lang.Class<?> from, int count)
from - -从指定类开始,不包含指定类count - -获取多少个调用者public static java.util.List<Tool.Caller> getCallers(int from, java.lang.Class<?> to)
from - -从第几个调用者开始,0表示从自己本身开始to - -取到指定的类为止,没有找到指定类就以Object为准public static java.util.List<Tool.Caller> getCallers(java.lang.Class<?> from, java.lang.Class<?> to)
from - -从指定类开始,不包含指定类to - -取到指定的类为止,没有找到指定类就以Object为准public static void sleep(long millis)
millis - - 毫秒public static java.util.Map<java.lang.String,java.lang.String> queryStrToMap(java.lang.String queryStr)
public static java.lang.String tuomin(java.lang.String str,
java.lang.String format)
str - -需要脱敏的字符串format - -脱敏方式
1、n*m:表示保留前n与后m位,中间用*号代替,如果长度不足n+1的,后边的m忽略不计,如:4*3表示为保留前4位与后3位,中间部分用*号替换
2、*n:表示为前边的n位用*号代替,如:*6表示为前边6位用*号代替
3、n*:表示为后边的n位用*号代替,如:6*表示为后边6位用*号代替
4、a:b:表示为把字母a替换为字母b,ab字母随便指定,a可以是一个正则表达式,如:@|\\$\\&:#,表示将字符串是的字符(@、$、&)替换为“#”public static java.lang.String toCamelCaseName(java.lang.String underline_name)
underline_name - 下滑线变量名称public static java.lang.String toUnderlineName(java.lang.String camelCaseName)
camelCaseName - -驼峰命名变量名称public static java.lang.Class forName(java.lang.String className)
public static <T> boolean isBaseType(T obj)
T - -obj - -public static boolean isBaseType(java.lang.Class<?> cls)
cls - -public static <T> boolean isNumber(T obj)
public static <T> boolean isDateType(T obj)
T - -obj - -public static boolean isDateType(java.lang.Class<?> cls)
cls - -public static boolean isWindows()
public static boolean isEmpty(java.lang.String str)
str - 字符串public static boolean isEmptys(java.lang.String... strings)
strings - -public static boolean isEmpty(java.lang.Object obj)
obj - -String,Map,Set,Collection等public static boolean isEmptys(java.lang.Object... obj)
obj - -String,Map,Set,Collection等public static boolean isNumeric(java.lang.String str)
str - Stringpublic static boolean noEmpty(java.lang.Object str)
str - -String,Map,Set,Collection等public static boolean noEmptys(java.lang.String... strings)
strings - -String,Map,Set,Collection等public static boolean noEmptys(java.lang.Object... strings)
strings - -String,Map,Set,Collection等public static java.lang.Object format(java.lang.Object object,
java.lang.String formatter)
对Date,String进行格式化
1、日期:| 字母 | 日期或时间元素 | 表示 | 示例 |
|---|---|---|---|
| G | Era 标志符 | Text | AD |
| y | 年 | Year | 1996; 96 |
| M | 年中的月份 | Month | July; Jul; 07 |
| w | 年中的周数 | Number | 27 |
| W | 月份中的周数 | Number | 2 |
| D | 年中的天数 | Number | 189 |
| d | 月份中的天数 | Number | 10 |
| F | 月份中的星期 | Number | 2 |
| E | 星期中的天数 | Text | Tuesday; Tue |
| a | Am/pm 标记 | Text | PM |
| H | 一天中的小时数(0-23) | Number | 0 |
| k | 一天中的小时数(1-24) | Number | 24 |
| K | am/pm 中的小时数(0-11) | Number | 0 |
| h | am/pm 中的小时数(1-12) | Number | 12 |
| m | 小时中的分钟数 | Number | 30 |
| s | 分钟中的秒数 | Number | 55 |
| S | 毫秒数 | Number | 978 |
| z | 时区 | General time zone | Pacific Standard Time; PST; GMT-08:00 |
| Z | 时区 | RFC 822 time zone | -0800 |
object - -Date或Stringformatter - -格式化字符串public static java.lang.String formatDate(java.util.Date date,
java.lang.String formatter)
date - 日期formatter - 格式化字符串public static java.lang.String hexStr2Str(java.lang.String s)
s - - 十六进制字符串public static java.lang.String str2HexStr(java.lang.String str)
str - 字符串public static <T,E extends java.util.Collection<T>> T[] toArray(E coll)
T - -需要转换的对象类型E - -集合中元素类型coll - 集合对象public static java.lang.String toWeekCN(int num)
num - -public static java.lang.String toRadix(long i,
int radix)
i - 要转换为字符串的 long。radix - 将在字符串表示形式中使用的基数。 最小值2,最大值62public static long toLong(java.lang.String s,
int radix)
public static <T> java.util.Set<T> setUnion(java.util.Set<T>... sets)
T - Set元素类型sets - 多个Set对象public static <T> java.util.Set<T> setDiff(java.util.Set<T>... sets)
T - Set元素类型sets - 多个Set对象public static <T> java.util.Set<T> setCross(java.util.Set<T>... sets)
T - Set元素类型sets - 多个Set对象public static int round(int min,
int max)
min - 最小值,包含max - 最大值,不包含public static long round(long min,
long max)
min - 最小值,包含max - 最大值,不包含public static float round(float min,
float max)
min - 最小值,包含max - 最大值,不包含public static double round(double min,
double max)
min - 最小值,包含max - 最大值,不包含public static <T extends java.lang.Number> double percent(T a,
T b)
T - Numbera - 除数b - 被除数public static <T extends java.lang.Number> double percent(T a,
T b,
int point)
T - Numbera - 除数b - 被除数point - 保留小数位(四舍五入)public static java.lang.String urlDecode(java.lang.String url)
url - 要解码的 Stringpublic static java.lang.String urlDecode(java.lang.String url,
java.lang.String encoding)
url - 要解码的 Stringencoding - 所支持的字符编码的名称。
Java 平台的每一种实现都需要支持以下标准 charset。请参考该实现的版本文档,查看是否支持其他 charset。这些可选 charset 的行为在不同的实现之间可能有所不同。
Charset
描述
US-ASCII 7 位 ASCII 字符,也叫作 ISO646-US、Unicode 字符集的基本拉丁块 ISO-8859-1 ISO 拉丁字母表 No.1,也叫作 ISO-LATIN-1 UTF-8 8 位 UCS 转换格式 UTF-16BE 16 位 UCS 转换格式,Big Endian(最低地址存放高位字节)字节顺序 UTF-16LE 16 位 UCS 转换格式,Little-endian(最高地址存放低位字节)字节顺序 UTF-16 16 位 UCS 转换格式,字节顺序由可选的字节顺序标记来标识
public static java.lang.String urlEncode(java.lang.String url)
url - 要转换的 String。public static java.lang.String urlEncode(java.lang.String url,
java.lang.String encoding)
url - 要转换的 String。encoding - 所支持的字符编码的名称。
Java 平台的每一种实现都需要支持以下标准 charset。请参考该实现的版本文档,查看是否支持其他 charset。这些可选 charset 的行为在不同的实现之间可能有所不同。
Charset
描述
US-ASCII 7 位 ASCII 字符,也叫作 ISO646-US、Unicode 字符集的基本拉丁块 ISO-8859-1 ISO 拉丁字母表 No.1,也叫作 ISO-LATIN-1 UTF-8 8 位 UCS 转换格式 UTF-16BE 16 位 UCS 转换格式,Big Endian(最低地址存放高位字节)字节顺序 UTF-16LE 16 位 UCS 转换格式,Little-endian(最高地址存放低位字节)字节顺序 UTF-16 16 位 UCS 转换格式,字节顺序由可选的字节顺序标记来标识