MapStruct工具库详解
MapStruct是一款非常实用Java工具,主要用于解决对象之间的拷贝问题,比如PO/DTO/VO/QueryParam之间的转换问题。区别于BeanUtils这种通过反射,它通过编译器编译生成常规方法,将可以很大程度上提升效率。全面的官方手册可以参考官方文档PDF在新窗口打开。
Lombok工具库详解
Lombok是一款非常实用Java工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO)。实际上我并不推荐使用Lombok(不主动使用它), 但是因为它有着很大的使用量,我们仍然有必要掌握它,不仅知道如何使用和它解决的问题,还要知道它的坑。
Lombok的引入
我们通常需要编写大量代码才能使类变得有用。如以下内容:
toString()
方法hashCode()
andequals()
方法Getter
andSetter
方法- 构造函数
JSON库详解
JSON应用非常广泛,对于Java常用的JSON库要完全掌握; 其中考虑到FastJson代码质量,漏洞,坑等等,应该尽量避免使用。
JSON简介
JSON是什么
- JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)
- JSON 是轻量级的文本数据交换格式
- JSON 独立于语言:JSON 使用 Javascript语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。 目前非常多的动态(PHP,JSP,.NET)编程语言都支持JSON。
- JSON 具有自我描述性,更易理解
日志类库详解
Java日志库是最能体现Java库在进化中的渊源关系的,在理解时重点理解日志框架本身和日志门面,以及比较好的实践等。要关注其历史渊源和设计(比如桥接),而具体在使用时查询接口即可, 否则会陷入JUL(Java Util Log), JCL(Commons Logging), Log4j, SLF4J, Logback,Log4j2傻傻分不清楚的境地。
日志库简介
我认为全面理解日志库需要从下面三个角度去理解:
Spring常用工具类
Spring作为常用的开发框架,在Spring框架应用中,排在ApacheCommon,Guava, Huool等通用库后,第二优先级可以考虑使用Spring-core-xxx.jar中的util包。(提醒读者:对于工具类,要站在高一点的角度知道有哪些,而不是只看到代码... 用的时候具体看下即可)
内置的resouce类型
- UrlResource
- ClassPathResource
- FileSystemResource
- ServletContextResource
- InputStreamResource
- ByteArrayResource
- EncodedResource 也就是Resource加上encoding, 可以认为是有编码的资源
- VfsResource(在jboss里经常用到, 相应还有 工具类 VfsUtils)
- org.springframework.util.xml.ResourceUtils 用于处理表达资源字符串前缀描述资源的工具. 如: "classpath:". 有 getURL, getFile, isFileURL, isJarURL, extractJarFileURL
Hutool包
Hutool作为后起之秀,功能上也比较全。但是要注意一点,它的开源协议是:中国第一个开源协议木兰宽松许可证, 第1版在新窗口打开,对此在商业项目中需要谨慎些,在个人项目无所谓。
简介
Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。
Google Guava包
Google出品的common包,我比较常用的比如Guava缓存等。
Google Guava简介
Guava工程包含了若干被Google的 Java项目广泛依赖 的核心库,例如:集合 [collections] 、缓存 [caching] 、原生类型支持 [primitives support] 、并发库 [concurrency libraries] 、通用注解 [common annotations] 、字符串处理 [string processing] 、I/O 等等。 所有这些工具每天都在被Google的工程师应用在产品服务中。
Apache Common包
Apache common不仅被成千上万开源工具使用,更是学习Java编程比较好的代码参考工具,效率工具。
Apache Common包简介
Apache Commons是对JDK的拓展,包含了很多开源的工具,用于解决平时编程经常会遇到的问题,减少重复劳动。官网网址:http://commons.apache.org
♥常用开发库知识体系详解♥
在开发应用时正确使用一些开源第三方工具包可以极大的提升开发效率,本章主要介绍运用极为广泛的工具包,比如Apache Common,Google Guava,Hutool等。
相关文章
- 常用类库 - Apache Common包
- 工具类第一选择1 - Apache common包不仅被成千上万开源工具使用,更是学习Java编程比较好的代码参考工具,效率工具。
- 常用类库 - Google Guava包
- 工具类第一选择2- Google出品,必属精品。
- 常用类库 - Hutool包
- 国产的工具类库,优点是比较全,也比较实用;选它要注意下它的协议是中国第一个开源协议木兰宽松许可证, 第1版在新窗口打开,商业型项目最好咨询下相关法务部门。
- 常用类库 - Spring常用工具类
- Spring作为常用的开发框架,在Spring框架应用中,排在ApacheCommon,Guava, Huool等通用库后,第二优先级可以考虑使用Spring-core-xxx.jar中的util包。
- 常用类库 - 日志相关类库详解
- Java日志库是最能体现Java库在进化中的渊源关系的,在理解时重点理解日志框架本身和日志门面,以及比较好的实践等。要关注其历史渊源和设计(比如桥接),而具体在使用时查询接口即可。
- 常用类库 - JSON类库详解
- JSON应用非常广泛,对常用对FastJson,Jackson和Gson作了具体阐述;其中考虑到FastJson代码质量,漏洞,坑等等,应该尽量避免使用。
- 常用类库 - Lombok工具库详解
- Lombok是一款非常实用Java工具,可用来帮助开发人员消除Java的冗长代码,尤其是对于简单的Java对象(POJO)。实际上我并不推荐使用Lombok(不主动使用它), 但是因为它有着很大的使用量,我们仍然有必要掌握它,不仅知道如何使用和它解决的问题,还要知道它的坑。
- 常用类库 - MapStruct工具库详解
- MapStruct是一款非常实用Java工具,主要用于解决对象之间的拷贝问题,比如PO/DTO/VO/QueryParam之间的转换问题。区别于BeanUtils这种通过反射,它通过编译器编译生成常规方法,将可以很大程度上提升效率。
- 常用类库 - 其它常用类库
- 其它常用类库体系很庞大,但是工具类的原则是只需要查找会使用即可。