开发中应该掌握的java工具类集锦

572 阅读4分钟

小知识,大挑战!本文正在参与“程序员必备小知识”创作活动。

在日常开发过程中,很多方法已经实现了,所以掌握开源的方法是非常必须的。

1.StringUtil

  • removeAll 移除字符串中所有给定字符串
  • equalIgnoreCase 比较两个字符串是否相等,不区分大小写
  • resetBlank 合并多个空白为一个空白
  • numFormat 小写金额转中文大写金额
  • doubleFormat 将double类型的数字保留两位小数(四舍五入)
  • doubleFormat 将double类型的数字保留n位小数(四舍五入)
  • countSubStr 获取字符串str在String中出现的次数
  • countSubStrReg 获取符合reg正则表达式的字符串在String中出现的次数
  • getEncode 获取字符串的编码
  • objEqual(Object,Object) 对象比较相等
  • isEmpty(Object o) 判断对象是否为空
  • isNotEmpty(Object o) 判断对象是否不为空

2.ValidateUtil

  • isEmail 验证是否为有效邮箱
  • isIdNo 验证是否为有效身份证号
  • isPhone 验证是否为有效手机号
  • isBankAccount 验证是否为有效银行卡号
  • isStrDate(String strDate) 判断字符串是否为日期格式

3.CommonUtil

  • isEmpty 判断collection/Map/Object/Object[]是否为空
  • isNotEmpty 判断collection/Map/Object/Object[]是否非空

4.RandomUtil

  • getStr 获取一个定长的随机字符串(只包含大小写字母、数字)

5.CodeUtil

  • encodeURL 将字符串以指定编码格式编码
  • dencodeURL 将字符串以指定编码格式解码

6.DateUtil

  • getTime(String pattern) 根据指定格式获取信息
  • getTime(SimpleDateFormat sdf) 根据指定格式获取信息
  • getAge 根据生日获取年龄
  • getDaysDiffFloor 计算两个时间之间相差的天数,满一天算一天
  • getDaysDiffCeil 计算两个时间之间相差的天数,不满一天按一天算
  • getMonthFirstDay 获取当前月第一天
  • getMonthLastDay 获取当前月最后一天
  • getCurrentMonday 获取当前周周一
  • convertTime 数据库的时间类型 Timestamp,str转成LocalDateTime
  • IfToday(Date date) 是否今天
  • IfYesterday(Date date) 是否昨天
  • IfThisYear(Date date) 是否今年
  • ConversionDateForMsgList(Date date) 转换为对应时间格式(适用于消息模块列表)
  • ConversionDateForList(Date date) 转换为对应时间格式(适用于普遍列表)
  • ConversionDateForDetail(Date date) 转换为对应时间格式(适用于详情页面)
  • calculateAging(Date startTime, Date endTime) 计算时效
  • convertTime(String str) str转成LocalDateTime

7.FileUtil

  • copyDir 复制文件
  • delDir 删除文件/目录
  • upload 文件上传
  • download 文件下载

8.JSONUtil工具类

  • parseObject(JSON json, Class clazz) 将 JSON 解析为javaObject
  • parseObject(T t) 将 T t 转换成 JSONObject
  • parseArray(T[] tArray) 根据 参数 数组 转成JSONArray
  • parseArray(List list) 将 List list 集合转换成 JSONArray
  • parseArray(Set set) 将Set set集合 转换为JSONArray
  • parseJSONArrayToList(JSONArray jsonArray, Class clazz) 将JSONArray 解析成 List list 集合
  • parseJSONArrayToSet(JSONArray jsonArray, Set set) 将 JSONArray 解析成 Set set
  • parseJSONArrayToObject(JSONArray jsonArray, Class clazz) 将 JSONArray 解析成 T t,支持数组的解析
  • parseJSONStringToMap(String jsonString, Map<String, T> map) 将jsonString 解析成 Map<String, T> map
  • toJSONString(Object object) 统一JSON空值处理方式
  • parseObject(String text) String转换为JSONObject
  • parseObject(String res, Type clazz) String转换为指定类型
  • parseObject(String res, TypeReference mapTypeReference) 方法实现说明 将String 反序列化为指定的数据类型

9.B64Util

  • decode(String str) Base64解密
  • isBlank(String str) 判断是否为空

10.CodeGenerator

  • doGen(DataSourceConfig dsc, String parentModule, String moduleName, String tableName) 自动生成对应项目目录中

11.ConvertUtils

  • convertSortValueByName(String name) 通过名称转化为hash值

12.HttpClientUtil

  • doGet(String url) 发送get方法
  • doPost(String url, Map<String, String> params) 发送post请求
  • doPost(String url, String json) post 请求,json参数
  • doPostWithSSL(String url, String json) 调用https地址,采用直接信任证书通过模式(说白了就是不验证证书)

13.PasswordEncoder

  • getEncodHash getEncodHash方法
  • setEncodHash(String encodHash) setEncodHash方法
  • encode(String password) 解码密码

14.SpringContextUtil

  • setApplicationContext(ApplicationContext applicationContext) 默认加载获取springContext 该方法为初始化方法
  • getBean(String beanName) 通过bean的名称进行bean获取
  • getBean(Class clazz) 根据bean的class来查找对象
  • getMessage(String key) 获取springcontext 中存储的制定key的值

15.TrustAnyTrustManager

  • scheckClientTrusted(X509Certificate[] x509Certificates, String s) 该方法检查客户端的证书,若不信任该证书则抛出异常。由于我们不需要对客户端进行认证,因此我们只需要执行默认的信任管理器的这个方法
  • checkServerTrusted(X509Certificate[] x509Certificates, String s) 方法检查服务器的证书,若不信任该证书同样抛出异常。通过自己实现该方法,可以使之信任我们指定的任何证书。在实现该方法时,也可以简单的不做任何处理,即一个空的函数体,由于不会抛出异常,它就会信任任何证书
  • getAcceptedIssuers() 返回受信任的X509证书数组