博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring 常用工具包
阅读量:5873 次
发布时间:2019-06-19

本文共 1843 字,大约阅读时间需要 6 分钟。

hot3.png

spring 常用工具包

具体可以参考spring的文档:

Object,String,Number相关

public abstract class StringUtils extends Object
  • 去掉最后一个字符:
String lang ="java,c,html,";lang = StringUtils.trimTrailingCharacter(lang,',');//打印出java,c,html

同理,去掉第一个字符可以trimLeadingCharacter方法。 其余方法可以看详细API。

public abstract class NumberUtils extends Object
  • 类型转换
Integer num =NumberUtils.parseNumber("12", Integer.class);
  • 对象拷贝
org.springframework.beans.BeanUtils//拷贝属性:BeanUtils.copyProperties(source, target, ignoreProperties);

Resource,File相关

public abstract class FileCopyUtils extends Objectpublic abstract class ResourceUtils extends Objectpublic abstract class PropertiesLoaderUtils
  • 以Ant风格路径获取Resource,这里支持ftp,http,classpath,file等地址前缀
ResourcePatternResolver patternResolver = new PathMatchingResourcePatternResolver();Resource[] resource = patternResolver.getResources("classpath:*.properties");
  • 从一个文件Copy到另外一个文件:
FileCopyUtils.copy(new File("p0"), new File("p1"));
  • 获取文件,资源路径可以是 classpath:, file:, URL,
File file = ResourceUtils.getFile("classpath:jdbc.properties");
  • 获取properties配置文件:
Properties properties = PropertiesLoaderUtils.loadAllProperties("http.properties")
  • 读取文件
URL url = ResourceUtils.getURL("classpath:yn-http.properties");UrlResource resource = new UrlResource(url);//其中EncodedResource可以指定具体的编码格式EncodedResource enResource = new EncodedResource(resource,"utf-8");String result = FileCopyUtils.copyToString(enResource.getReader());System.out.println(result);

常用的Resource实现类有: ClassPathResource,FileSystemResource,InputStreamResource,UrlResource, 具体可在org.springframework.core.io包下查看

Assert

在Spring的源代码里面,经常看到这样的代码:

输入图片说明

我们发现在Assert类中的具体实现:

输入图片说明

对于一些异常的检验,可以参考这个设计 例如,在这里,我们还可以自定义异常,最后统一捕获。

public static void checkBussiness(Object object, String message)   {     if (checkSomething()) {//业务逻辑校验      throw new MyException(message);    } }

转载于:https://my.oschina.net/lfy2008/blog/654157

你可能感兴趣的文章
Java四种线程池newCachedThreadPool,newFixedThreadPool,newScheduledThreadPool,newSingleThreadExecutor...
查看>>
jqGrid时间转换
查看>>
SQL Server日期时间格式转换字符串详解
查看>>
vuex 中关于 mapState 的作用
查看>>
[Spark][Python]Spark Join 小例子
查看>>
form表单下的button按钮会自动提交表单的问题
查看>>
大战设计模式【11】—— 模板方法模式
查看>>
springBoot介绍
查看>>
Intellij IDEA 快捷键整理
查看>>
Redis 通用操作2
查看>>
性能优化——统计信息——SQLServer自动更新和自动创建统计信息选项
查看>>
11. Spring Boot JPA 连接数据库
查看>>
洛谷P2925 [USACO08DEC]干草出售Hay For Sale
查看>>
MapReduce工作原理流程简介
查看>>
那些年追过的......写过的技术博客
查看>>
小米手机解锁bootload教程及常见问题
查看>>
Python内置函数property()使用实例
查看>>
Spring MVC NoClassDefFoundError 问题的解决方法。
查看>>
CentOS 6.9配置网卡IP/网关/DNS命令详细介绍及一些常用网络配置命令(转)
查看>>
python基础教程_学习笔记19:标准库:一些最爱——集合、堆和双端队列
查看>>