大部分都包含在spring-core的org.springframework.util包下
RequestContextUtils:用于从request中获取WebApplicationContext, LocaleResolver,Locale, ThemeResolver, Theme, and MultipartResolver的工具类
RequestContextFilter,RequestContextHolder:二者配合使用可以在任何代码中获取request和response, 无需通过参数传递
ValidationUtils:Spring中用于验证的工具类
DataSourceUtils:用于从DataSource中获取Connection,或者关闭Connection等操作,JdbcTemplate中有用到
Base64Utils: 用于Base64编解码的工具类, java8环境下使用java.util.Base64实现Base64编解码, 否则使用org.apache.commons.codec.binary.Base64,后者需要添加commons-codec的jar包
ClassUtils: Class相关的工具类,例如从Class对象中获取类的包名类名等信息等,如上面的Base64Utils就使用了ClassUtils的isPresent方法判断classpath下是否存在java.util.Base64
CollectionUtils: 集合工具类, 包含判断是否为空的方法isEmpty、判断包含关系的方法containsAny等
CompositeIterator:组合迭代器, 可以通过add(Iterator<E> iterator)方法新增一个迭代器,最终将所有迭代器作为一个整体进行遍历
IdGenerator,JdkIdGenerator,AlternativeJdkIdGenerator,SimpleIdGenerator : 生成全局唯一UUID的接口和几个实现
StreamUtils:操作流的工具类,提供的功能包括从输入流中返回字节数组、从输入流中返回特定编码的字符串、输入输出流的相互拷贝、清空输入流等
StringUtils:操作字符串的工具类
ConcurrentReferenceHashMap:使用软引用和弱引用保存key和value,性能更高
CustomizableThreadCreator:线程生成器,用于生成一组线程名前缀相同的线程,主要通过createThread(Runnable runnable)方法创建线程
SocketUtils:提供findAvailablePort方法用于获取指定范围内的一个未占用端口
SystemPropertyUtils:替换字符串中的${}为系统属性
StopWatch:一个简单的计时工具,提供了start、stop方法,避免直接使用System.currentTimeMillis()
SerializationUtils:提供对象和字节数组相互转化的方法
ReflectionUtils:强大的反射工具类,可以很方便的获取特定class的Field、Method等,修改Field、Method的可见性等
MethodInvoker:通过反射调用方法的工具类