我的Jakarta+Commons
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我的Jakarta+Commons相关的知识,希望对你有一定的参考价值。
conmom特点:可重用性 独立性 null的特殊处理:null非null,各个工具类提供了默认值,可以设置默认值好玩的方法:
ArrayUtils
isEquals
toMap 多位数组转换成Map
StringUtils
IndexOfAny IndexOfAnyBut LastIndexOfAny 好处:省去多余的判断
ContailOnly ContainNone
Left/Right/Mid 代替Substring
Join 数组拼接成字符串
Chop/Chop '某时候'可以代替SubString
Abbreviate 获取字符串的缩写形式...,一行代码省去了前台的js代码
difference 返回int
LevensteinDistance 比较两个字符串不同的地方
leftPad/rightPad/center 拼接字符串
ClassUtills
getAllInterfaces 获取所有的接口,父类
StringEscapeUtils 转义和反义
escapehtml
escapeJava
escapejavascript
escapeSql
escapeXml
Builder包 使用CompatrteToBuilder重写toString
compareToBulider
Equalsbuidler
HashCodeBuilder
ToStringBuilder 建议抽象类重写toString方法 ToStringStyle样式
Math包
Fraction 处理分数
NumberUtils 处理数值:可以判断字符串是否是数字 获取数组的中max,min StringUtils.isNumeric(String)判断字符串是否由数字组成
RandomUtils 处理随机数
Range 范围,可以替换重复的判断
Time包
StopWatch 一个方便的计时器
FastDateFormat 线程安全的替代类
DurationFormatUtils 格式化获取两个时间间的时间
formatDurationHMS 将时间转化成时分秒的格式
formatPeriod 对开始和结束进行格式
formatDuration 以毫秒为单位的时间段进行格式化
BeanUtils
getProperty和setProperty
copyProperties存在类型转换 PropertyUtils速度更快,返回object
ConvertUtils 类型转化
...
Collection
BoundedFifoBuffer 根据最大限制自我维护的map的集合
可爱的Map:
LazyMap 调用的时候才存储
CaseInsensitiveMap 对大小写不敏感的map
LRUMap 根据最大限制自我维护的map
MultiKeyMap 多键一值
MultiHashMap 多值一键
SingletonMap 不允许增删的Map
总结:javaBean convert map:BeanMap BeanUtilsBean
算子:哎呦,不错哦
数据根据评估结果采取相应的措施
final ArrayList<Object> array = new ArrayList<>();
//评估
Predicate isBad = new Predicate() {
@Override
public boolean evaluate(Object object) {
Person p = (Person) object;
return p.mark==1;
}
};
//措施
Closure closure = new Closure() {
@Override
public void execute(Object input) {
array.add(input);
}
};
//数据
ArrayList<Object> obj = new ArrayList<>();
Person p = new Person();
p.setMark(1);
Person pp = new Person();
pp.setMark(2);
obj.add(pp);
obj.add(p);
//匹配规则
HashMap<Object, Object> map = new HashMap<>();
map.put(isBad,closure);
Closure cc = ClosureUtils.switchClosure(map);
//数据依据评估采取措施
CollectionUtils.forAllDo(obj,cc);
Base64
6*4=3*8 4个字符,每个字符占8位=3个字节,每个字节占8位
DigestUtil md5加密
ExtendedProperties 分行 ,多值 转义 include
Betwixt 一个很灵活的xml和JavaBean直接转换的工具类
Discovery 根据--服务--查获--服务提供者
CLI 命令行接口
Digester 模式匹配工具 规则 应用规则的文件
以上是关于我的Jakarta+Commons的主要内容,如果未能解决你的问题,请参考以下文章
jakarta / javax 命名空间下的 Weld 和 Undertow
Wildfly Undertow:jakarta.servlets.Servlet 没有实现 javax.servlet.Servlet