內置的resouce類型
UrlResourceClassPathResourceFileSystemResourceServletContextResourceInputStreamResourceByteArrayResourceEncodedResource 也就是Resource加上encoding, 可以認為是有編碼的資源VfsResource(在jboss里經常用到, 相應還有 工具類 VfsUtils)org.springframework.util.xml.ResourceUtils 用于處理表達資源字符串前綴描述資源的工具. 如: "classpath:".
有 getURL, getFile, isFileURL, isJarURL, extractJarFileURL
工具類
org.springframework.core.annotation.AnnotationUtils 處理注解org.springframework.core.io.support.PathMatchingResourcePatternResolver 用于處理 ant 匹配風格(com/.jsp, com//.jsp),找出所有的資源, 結合上面的resource的概念一起使用,對于遍歷文件很有用. 具體請詳細查看javadocorg.springframework.core.io.support.PropertiesLoaderUtils 加載Properties資源工具類,和Resource結合org.springframework.core.BridgeMethodResolver 橋接方法分析器. 關于橋接方法請參考: http://java.sun.com/docs/books/jls/third_edition/html/expressions.html#15.12.4.5org.springframework.core.GenericTypeResolver 范型分析器, 在用于對范型方法, 參數分析.org.springframework.core.NestedExceptionUtils
xml工具
org.springframework.util.xml.AbstractStaxContentHandlerorg.springframework.util.xml.AbstractStaxXMLReaderorg.springframework.util.xml.AbstractXMLReaderorg.springframework.util.xml.AbstractXMLStreamReaderorg.springframework.util.xml.DomUtilsorg.springframework.util.xml.SimpleNamespaceContextorg.springframework.util.xml.SimpleSaxErrorHandlerorg.springframework.util.xml.SimpleTransformErrorListenerorg.springframework.util.xml.StaxUtilsorg.springframework.util.xml.TransformerUtils
其它工具集
org.springframework.util.xml.AntPathMatcherant風格的處理org.springframework.util.xml.AntPathStringMatcherorg.springframework.util.xml.Assert斷言,在我們的參數判斷時應該經常用org.springframework.util.xml.CachingMapDecoratororg.springframework.util.xml.ClassUtils用于Class的處理org.springframework.util.xml.CollectionUtils用于處理集合的工具org.springframework.util.xml.CommonsLogWriterorg.springframework.util.xml.CompositeIteratororg.springframework.util.xml.ConcurrencyThrottleSupportorg.springframework.util.xml.CustomizableThreadCreatororg.springframework.util.xml.DefaultPropertiesPersisterorg.springframework.util.xml.DigestUtils摘要處理, 這里有用于md5處理信息的org.springframework.util.xml.FileCopyUtils文件的拷貝處理, 結合Resource的概念一起來處理, 真的是很方便org.springframework.util.xml.FileSystemUtilsorg.springframework.util.xml.LinkedCaseInsensitiveMap
key值不區分大小寫的LinkedMap
org.springframework.util.xml.LinkedMultiValueMap一個key可以存放多個值的LinkedMaporg.springframework.util.xml.Log4jConfigurer一個log4j的啟動加載指定配制文件的工具類org.springframework.util.xml.NumberUtils處理數字的工具類, 有parseNumber 可以把字符串處理成我們指定的數字格式, 還支持format格式, convertNumberToTargetClass 可以實現Number類型的轉化.org.springframework.util.xml.ObjectUtils有很多處理null object的方法. 如nullSafeHashCode, nullSafeEquals, isArray, containsElement, addObjectToArray, 等有用的方法org.springframework.util.xml.PatternMatchUtilsspring里用于處理簡單的匹配. 如 Spring's typical "xxx", "xxx" and "xxx" pattern stylesorg.springframework.util.xml.PropertyPlaceholderHelper用于處理占位符的替換org.springframework.util.xml.ReflectionUtils反映常用工具方法. 有 findField, setField, getField, findMethod, invokeMethod等有用的方法org.springframework.util.xml.SerializationUtils用于java的序列化與反序列化. serialize與deserialize方法org.springframework.util.xml.StopWatch一個很好的用于記錄執行時間的工具類, 且可以用于任務分階段的測試時間. 最后支持一個很好看的打印格式. 這個類應該經常用org.springframework.util.xml.StringUtilsorg.springframework.util.xml.SystemPropertyUtilsorg.springframework.util.xml.TypeUtils用于類型相容的判斷. isAssignableorg.springframework.util.xml.WeakReferenceMonitor弱引用的監控
和web相關的工具
org.springframework.web.util.CookieGeneratororg.springframework.web.util.HtmlCharacterEntityDecoderorg.springframework.web.util.HtmlCharacterEntityReferencesorg.springframework.web.util.HtmlUtilsorg.springframework.web.util.HttpUrlTemplate
這個類用于用字符串模板構建url, 它會自動處理url里的漢字及其它相關的編碼. 在讀取別人提供的url資源時, 應該經常用
String url = "http://localhost/myapp/{name}/{id}"
org.springframework.web.util.JavaScriptUtilsorg.springframework.web.util.Log4jConfigListener
用listener的方式來配制log4j在web環境下的初始化
org.springframework.web.util.UriTemplateorg.springframework.web.util.UriUtils處理uri里特殊字符的編碼org.springframework.web.util.WebUtilsorg.springframework.web.util.
請求工具類 org.springframework.web.bind.ServletRequestUtils
//取請求參數的整數值:
public static Integer getIntParameter(ServletRequest request, String name)
public static int getIntParameter(ServletRequest request, String name, int defaultVal) -->單個值
public static int[] getIntParameters(ServletRequest request, String name) -->數組
還有譬如long、float、double、boolean、String的相關處理方法。
字符串工具類 org.springframework.util.StringUtils
首字母大寫: public static String capitalize(String str)
首字母小寫:public static String uncapitalize(String str)
判斷字符串是否為null或empty: public static boolean hasLength(String str)
判斷字符串是否為非空白字符串(即至少包含一個非空格的字符串):public static boolean hasText(String str)
獲取文件名:public static String getFilename(String path) 如e.g. "mypath/myfile.txt" -> "myfile.txt"
獲取文件擴展名:public static String getFilenameExtension(String path) 如"mypath/myfile.txt" -> "txt"
還有譬如數組轉集合、集合轉數組、路徑處理、字符串分離成數組、數組或集合合并為字符串、數組合并、向數組添加元素等。
對象序列化與反序列化 org.springframework.util.SerializationUtils
public static byte[] serialize(Object object)
public static Object deserialize(byte[] bytes)
數字處理 org.springframework.util.NumberUtils
字符串轉換為Number并格式化,包括具體的Number實現類,如Long、Integer、Double,字符串支持16進制字符串,并且會自動去除字符串中的空格:
? public static <T extends Number> T parseNumber(String text, Class<T> targetClass)
? public static <T extends Number> T parseNumber(String text, Class<T> targetClass, NumberFormatnumberFormat)
各種Number中的轉換,如Long專為Integer,自動處理數字溢出(拋出異常):
public static <T extends Number> T convertNumberToTargetClass(Number number, Class<T> targetClass)
文件復制 org.springframework.util.FileCopyUtils
流與流之間、流到字符串、字節數組到流等的復制
目錄復制 org.springframework.util.FileSystemUtils
遞歸復制、刪除一個目錄
MD5加密 org.springframework.util.DigestUtils
字節數組的MD5加密 public static String md5DigestAsHex(byte[] bytes)
為了讓學習變得輕松、高效,今天給大家免費分享一套Java入門教學資源。幫助大家在成為Java架構師的道路上披荊斬棘。需要入門的資料歡迎加入學習交流群:9285,05736
總結
以上是生活随笔為你收集整理的java开发中spring常用的工具类的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。