纠纷奇闻作文社交美文家庭
家庭城市
爱好生活
创业男女
能力餐饮
美文职业
心理周易
母婴奇趣
两性技能
社交传统
新闻范文
工作个人
思考社会
作文职场
家居中考
兴趣安全
解密魅力
奇闻笑话
写作笔记
阅读企业
饮食时事
纠纷案例
初中历史
说说童话
乐趣治疗

求你别再自己瞎写工具类了,Spring自带的这些它不香吗?

12月12日 夜未央投稿
  断言对象、数组、集合ObjectUtilsStringUtilsCollectionUtils文件、资源、IO流FileCopyUtilsResourceUtilsStreamUtils反射、AOPReflectionUtilsAopUtilsAopContext
  最近发现同事写了不少重复的工具类,发现其中很多功能,Spring自带的都有。于是整理了本文,希望能够帮助到大家!断言断言是一个逻辑判断,用于检查不应该发生的情况Assert关键字在JDK1。4中引入,可通过JVM参数enableassertions开启SpringBoot中提供了Assert断言工具类,通常用于数据合法性检查要求参数object必须为非空(NotNull),否则抛出异常,不予放行参数message参数用于定制异常信息。voidnotNull(Objectobject,Stringmessage)要求参数必须空(Null),否则抛出异常,不予放行。和notNull()方法断言规则相反voidisNull(Objectobject,Stringmessage)要求参数必须为真(True),否则抛出异常,不予放行。voidisTrue(booleanexpression,Stringmessage)要求参数(ListSet)必须非空(NotEmpty),否则抛出异常,不予放行voidnotEmpty(Collectioncollection,Stringmessage)要求参数(String)必须有长度(即,NotEmpty),否则抛出异常,不予放行voidhasLength(Stringtext,Stringmessage)要求参数(String)必须有内容(即,NotBlank),否则抛出异常,不予放行voidhasText(Stringtext,Stringmessage)要求参数是指定类型的实例,否则抛出异常,不予放行voidisInstanceOf(Classtype,Objectobj,Stringmessage)要求参数subType必须是参数superType的子类或实现类,否则抛出异常,不予放行voidisAssignable(ClasssuperType,ClasssubType,Stringmessage)对象、数组、集合ObjectUtils获取对象的基本信息获取对象的类名。参数为null时,返回字符串:nullStringnullSafeClassName(Objectobj)参数为null时,返回0intnullSafeHashCode(Objectobject)参数为null时,返回字符串:nullStringnullSafeToString(boolean〔〕array)获取对象HashCode(十六进制形式字符串)。参数为null时,返回0StringgetIdentityHexString(Objectobj)获取对象的类名和HashCode。参数为null时,返回字符串:StringidentityToString(Objectobj)相当于toString()方法,但参数为null时,返回字符串:StringgetDisplayString(Objectobj)判断工具判断数组是否为空booleanisEmpty(Object〔〕array)判断参数对象是否是数组booleanisArray(Objectobj)判断数组中是否包含指定元素booleancontainsElement(Object〔〕array,Objectelement)相等,或同为null时,返回truebooleannullSafeEquals(Objecto1,Objecto2)判断参数对象是否为空,判断标准为:Optional:Optional。empty()Array:length0CharSequence:length0Collection:Collection。isEmpty()Map:Map。isEmpty()booleanisEmpty(Objectobj)其他工具方法向参数数组的末尾追加新元素,并返回一个新数组A〔〕addObjectToArray(A〔〕array,Oobj)原生基础类型数组包装类数组Object〔〕toObjectArray(Objectsource)StringUtils字符串判断工具判断字符串是否为null,或。注意,包含空白符的字符串为非空booleanisEmpty(Objectstr)判断字符串是否是以指定内容结束。忽略大小写booleanendsWithIgnoreCase(Stringstr,Stringsuffix)判断字符串是否已指定内容开头。忽略大小写booleanstartsWithIgnoreCase(Stringstr,Stringprefix)是否包含空白符booleancontainsWhitespace(Stringstr)判断字符串非空且长度不为0,即,NotEmptybooleanhasLength(CharSequencestr)判断字符串是否包含实际内容,即非仅包含空白符,也就是NotBlankbooleanhasText(CharSequencestr)判断字符串指定索引处是否包含一个子串。booleansubstringMatch(CharSequencestr,intindex,CharSequencesubstring)计算一个字符串中指定子串的出现次数intcountOccurrencesOf(Stringstr,Stringsub)字符串操作工具查找并替换指定子串Stringreplace(StringinString,StringoldPattern,StringnewPattern)去除尾部的特定字符StringtrimTrailingCharacter(Stringstr,chartrailingCharacter)去除头部的特定字符StringtrimLeadingCharacter(Stringstr,charleadingCharacter)去除头部的空白符StringtrimLeadingWhitespace(Stringstr)去除头部的空白符StringtrimTrailingWhitespace(Stringstr)去除头部和尾部的空白符StringtrimWhitespace(Stringstr)删除开头、结尾和中间的空白符StringtrimAllWhitespace(Stringstr)删除指定子串Stringdelete(StringinString,Stringpattern)删除指定字符(可以是多个)StringdeleteAny(StringinString,StringcharsToDelete)对数组的每一项执行trim()方法String〔〕trimArrayElements(String〔〕array)将URL字符串进行解码StringuriDecode(Stringsource,Charsetcharset)路径相关工具方法解析路径字符串,优化其中的。。StringcleanPath(Stringpath)解析路径字符串,解析出文件名部分StringgetFilename(Stringpath)解析路径字符串,解析出文件后缀名StringgetFilenameExtension(Stringpath)比较两个两个字符串,判断是否是同一个路径。会自动处理路径中的。。booleanpathEquals(Stringpath1,Stringpath2)删除文件路径名中的后缀部分StringstripFilenameExtension(Stringpath)以。作为分隔符,获取其最后一部分Stringunqualify(StringqualifiedName)以指定字符作为分隔符,获取其最后一部分Stringunqualify(StringqualifiedName,charseparator)CollectionUtils集合判断工具判断ListSet是否为空booleanisEmpty(C?collection)判断Map是否为空booleanisEmpty(M?,?map)判断ListSet中是否包含某个对象booleancontainsInstance(C?collection,Objectelement)以迭代器的方式,判断ListSet中是否包含某个对象booleancontains(I?iterator,Objectelement)判断ListSet是否包含某些对象中的任意一个booleancontainsAny(C?source,C?candidates)判断ListSet中的每个元素是否唯一。即ListSet中不存在重复元素booleanhasUniqueObject(C?collection)集合操作工具将Array中的元素都添加到ListSet中EvoidmergeArrayIntoCollection(Objectarray,CollectionEcollection)将Properties中的键值对都添加到Map中K,VvoidmergePropertiesIntoMap(Propertiesprops,MapK,Vmap)返回List中最后一个元素TTlastElement(ListTlist)返回Set中最后一个元素TTlastElement(SetTset)返回参数candidates中第一个存在于参数source中的元素EEfindFirstMatch(C?source,CollectionEcandidates)返回ListSet中指定类型的元素。TTfindValueOfType(C?collection,ClassTtype)返回ListSet中指定类型的元素。如果第一种类型未找到,则查找第二种类型,以此类推ObjectfindValueOfType(C?collection,C?〔〕types)返回ListSet中元素的类型C?findCommonElementType(C?collection)文件、资源、IO流FileCopyUtils输入从文件中读入到字节数组中byte〔〕copyToByteArray(Filein)从输入流中读入到字节数组中byte〔〕copyToByteArray(InputStreamin)从输入流中读入到字符串中StringcopyToString(Readerin)输出从字节数组到文件voidcopy(byte〔〕in,Fileout)从文件到文件intcopy(Filein,Fileout)从字节数组到输出流voidcopy(byte〔〕in,OutputStreamout)从输入流到输出流intcopy(InputStreamin,OutputStreamout)从输入流到输出流intcopy(Readerin,Writerout)从字符串到输出流voidcopy(Stringin,Writerout)ResourceUtils从资源路径获取文件判断字符串是否是一个合法的URL字符串。staticbooleanisUrl(StringresourceLocation)获取URLstaticURLgetURL(StringresourceLocation)获取文件(在JAR包内无法正常使用,需要是一个独立的文件)staticFilegetFile(StringresourceLocation)Resource文件系统资源D:。。。FileSystemResourceURL资源,如file:。。。http:。。。UrlResource类路径下的资源,classpth:。。。ClassPathResourceWeb容器上下文中的资源(jar包、war包)ServletContextResource判断资源是否存在booleanexists()从资源中获得File对象FilegetFile()从资源中获得URI对象URIgetURI()从资源中获得URI对象URLgetURL()获得资源的InputStreamInputStreamgetInputStream()获得资源的描述信息StringgetDescription()StreamUtils输入voidcopy(byte〔〕in,OutputStreamout)intcopy(InputStreamin,OutputStreamout)voidcopy(Stringin,Charsetcharset,OutputStreamout)longcopyRange(InputStreamin,OutputStreamout,longstart,longend)输出byte〔〕copyToByteArray(InputStreamin)StringcopyToString(InputStreamin,Charsetcharset)舍弃输入流中的内容intdrain(InputStreamin)反射、AOPReflectionUtils获取方法在类中查找指定方法MethodfindMethod(C?clazz,Stringname)同上,额外提供方法参数类型作查找条件MethodfindMethod(C?clazz,Stringname,C?。。。paramTypes)获得类中所有方法,包括继承而来的Method〔〕getAllDeclaredMethods(C?leafClass)在类中查找指定构造方法ConstructorTaccessibleConstructor(ClassTclazz,C?。。。parameterTypes)是否是equals()方法booleanisEqualsMethod(Methodmethod)是否是hashCode()方法booleanisHashCodeMethod(Methodmethod)是否是toString()方法booleanisToStringMethod(Methodmethod)是否是从Object类继承而来的方法booleanisObjectMethod(Methodmethod)检查一个方法是否声明抛出指定异常booleandeclaresException(Methodmethod,C?exceptionType)执行方法执行方法ObjectinvokeMethod(Methodmethod,Objecttarget)同上,提供方法参数ObjectinvokeMethod(Methodmethod,Objecttarget,Object。。。args)取消Java权限检查。以便后续执行该私有方法voidmakeAccessible(Methodmethod)取消Java权限检查。以便后续执行私有构造方法voidmakeAccessible(C?ctor)获取字段在类中查找指定属性FieldfindField(C?clazz,Stringname)同上,多提供了属性的类型FieldfindField(C?clazz,Stringname,C?type)是否为一个publicstaticfinal属性booleanisPublicStaticFinal(Fieldfield)设置字段获取target对象的field属性值ObjectgetField(Fieldfield,Objecttarget)设置target对象的field属性值,值为valuevoidsetField(Fieldfield,Objecttarget,Objectvalue)同类对象属性对等赋值voidshallowCopyFieldState(Objectsrc,Objectdest)取消Java的权限控制检查。以便后续读写该私有属性voidmakeAccessible(Fieldfield)对类的每个属性执行callbackvoiddoWithFields(C?clazz,ReflectionUtils。FieldCallbackfc)同上,多了个属性过滤功能。voiddoWithFields(C?clazz,ReflectionUtils。FieldCallbackfc,ReflectionUtils。FieldFilterff)同上,但不包括继承而来的属性voiddoWithLocalFields(C?clazz,ReflectionUtils。FieldCallbackfc)AopUtils判断代理类型判断是不是Spring代理对象booleanisAopProxy()判断是不是jdk动态代理对象isJdkDynamicProxy()判断是不是CGLIB代理对象booleanisCglibProxy()获取被代理对象的class获取被代理的目标classC?getTargetClass()AopContext获取当前对象的代理对象ObjectcurrentProxy()
投诉 评论 转载

主流洗地机对比评测添可美的必胜BOBOT,谁会胜出?吸尘器、电动拖把、扫地机器人、洗地机,面对越来越细分的清洁工具,大家应该如何去选择呢?去年咱们就做过一期内容,讲述了它们之间的差异,简单概括一下就是:吸尘器和电动拖把,这……建立富有成效的创造型团队论文现代的社会进入了以信息技术广泛运用为特征的新经济时代,市场竞争越来越激烈。在这样的环境下,一个公司或组织要想求得生存和发展,就必须建立起创新型团队,并激发团队成员的的创造性。也……小米Civi1s与小米Civi有什么区别?小米Civi1S相比小米Civi主要有3个升级,处理器换成了骁龙778G芯片,自拍部分加入了前置人眼追焦功能与美颜技术再次升级,还带来了全新的奇迹阳光配色。其他方面保持不比,依……我就是你的鲜的每日C摩飞便携榨汁杯零、序其实,自己是个懒人,水果这类东西属于懒的嚼,曾经也想过购买榨汁机、原汁机、破壁机等等家里有一个以前购买豆浆机赠送的榨汁机,跟上图这种类似,就是那种分离果肉的,……化身健身教练!OPPO智能电视K9带来全新的大屏体验,满足感在去年的未来科技大会上,OPPO宣布了要加强在IoT可穿戴设备及智能家居上面的布局,以求给我们创造一个更加美好的科技生活场景。这不,前几天OPPO在OPPOK9系列超次元发布会……助听后补偿是否进入香蕉图?只要您的助听器得到了合适的调试,经助听器补偿之后测得的听力图曲线是可以进入言语香蕉图的,进入香蕉图则代表助听器的助听效果很好。如果只有大部分曲线不是完全进入香蕉图,也不用很担心……1。4比特币SHIBFILETH行情分析01岛论大势ackDorsey发布BTC创始区块内容以纪念比特币13周年比特币迎来了13周年生日,虽然价格没有上涨,但算力却创下了历史新高,这说明13年以来,比特币……求你别再自己瞎写工具类了,Spring自带的这些它不香吗?断言对象、数组、集合ObjectUtilsStringUtilsCollectionUtils文件、资源、IO流FileCopyUtilsResourceUtilsStream……合并两个有序链表将两个升序链表合并为一个新的升序链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。Definitionforsinglylinkedlist。structListNo……最强手机通信性能评测报告公布,华为Mate20Pro斩获六项很多朋友在选购手机的时候会上网看评测,然而关于手机通信性能的评测,我们只能去看运营商提供的数据报告了。日前,中国电信发布了《20182019年全网通手机通信性能评测报告》,针对……独显加持!iQOONeo5值得体验的几个点,你Get没有明天(3。16)iQOONeo5就要发布啦,想想还有些激动,毕竟还没有体验过独显的手机,电脑倒是玩过不少,其实想了想笔记本,CPU会带核显,但是通常情况下,核显没有独显给力,有……单页面网站导航设计的策略论文0引言随着网络信息的飞速发展,网络传媒已被越来越多的企业看好,而网站是传媒很好的一种方式,所以网页制作已经被带入前所未有的新时期。而且近几年,随着网络技术的不断提升,计算……
鸵鸟枕头(鸵鸟怎么养殖)双节观察丨蜂拥而至的主题公园不进则退的上一句(不进则退的励志语)东交民巷15号(东交民巷宾馆)六一去哪玩?盘点青州六一特惠游乐园红梅正报万家春(红梅正报万家春是什么节日)巴中(广东)高尔夫球队外联部长杯邀请赛圆满落幕河州记忆序卢世雄唐三彩基本色彩之一(唐三彩哪三色为主)海鳗鱼的做法(鳗鱼怎么做好吃)在内蒙古走访少数民族家庭消息被证实,广西陆川发出内部通知,统计中青年未娶媳妇人数
叠韵答陆敬南男性常吃泥鳅能提高精子质量吗关于灰姑娘的读后感300字作文有没有人祛斑成功,价钱还比较低?小草启示作文(通用6篇)预见2023!股票VS基金VS债券,2023如何理财单纯女孩诚实网传吴亦凡选妃的是4岁的少女!曾打掉孩子,删除的录像被还原宝贝优化被降权老链接优化必须要知道的细节大血藤对孕妇有影响吗大血藤的禁忌人群妙语得官

友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找美丽时装彩妆资讯历史明星乐活安卓数码常识驾车健康苹果问答网络发型电视车载室内电影游戏科学音乐整形