01. JUnit

第一个要说的当然是JUnit了,JUnit毕竟是Java圈目前最知名及常用的测试框架。JUnit之所以能够成为Java圈中最热门的测试库,是因为对于很多项目而言,单元测试是非常重要的。优点有很多

比如,给开发者提供了简洁的图形界面,可以轻松地写出可重复测试的代码,允许并发同时执行,还允许开发者创建测试套件 (Test Suite) 来查看、检测整体的测试进度及测试期间发生的副作用等。

02. SLF4J

SLF4J或Simple Logging Facade for Java,它为不同的框架提供了一个抽象概念,允许开发人员在部署时插入任何框架。它的功能在基于外观的简单日志API,并将客户端API与日志后端分开。

通过向classpath中添加所需的绑定,可以发现其后端。由于客户端API和后端完全解耦,因此它可以集成到任何框架或现有的代码片段。

03. Log4j

Log4j是Apache中的一个库,可用作日志工具。

Log4j恰好是其所在应用领域中最可靠的库,可以扩展到支持自定义组件配置。配置语法非常简单,支持XML、YAML 和 JSON。并提供对多个API的支持,最重要的是,它的工作速度相当惊人。

04. Google Guava

Google Guava是Java编程的另一个受欢迎的Java核心库

Google Guava软件包中的库或多或少是对核心库的对应部分有增强功能,并使编程更加高效和有效。Guava 包括内存缓存、不可变集合、函数类型、图形库和可用于 I/O、散列、并发、原语、字符串处理、反射等等的API实用程序。

05. XStream

当涉及将对象序列化到XML中时,这时常用XStream库, 开发人员通过XStream库可以轻松地将对象序列化为XML并返回。

XStream的功能也很多,比如,大多数对象可以被序列化,并提供特定的映射,提供高性能和低内存占用,信息不重复,可自定义的转换策略,安全的框架,异常情况下的详细诊断等等。

06. iText

iText是用于在Java中创建和操作PDF件的Java开源库。

最近的iText版本改头换面,加入许多新功能。基本Java中创建和操作PDF件的各种操作都能完成

07. Apache PDF box

Apache PDFBox是另一个可用于操作PDF文件的开源库。

PDFBox的主要功能使其成为超级库,其中包括PDF创建、将单个PDF分割为多个PDF文件、合并并提取PDF文本的Unicode文本,填写PDF表单,根据PDF/A标准验证PDF文件,将PDF保存为图像并对PDF进行数字签名。

08. jsoup

jsoup是一个很实用的Java库,用于处理和解析HTML。Jsoup提供了一个有用的用于提取数据的API。jsoup中实现的标准是WHATWG HTML5。和最新的浏览器作法一样,jsoup将HTML解析为DOM。

它允许解析来自任何URL或文件的HTML,清理和操纵HTML元素和属性,以检索用户提交的数据并过滤掉XSS攻击属性,使用jsoup还可以完成更多功能。

09. Gson

Gson是Google的另一个库,它轻而易举的将Java Objects转换成等效的JSON表示形式。

它为Java泛型提供了极大的支持,并允许对象的自定义表示。

10. Joda Time

这就是我一直强调的简单但功能强大的库,它节省了大量的开发时间。 Joda-Time是一个Java库,作为Java中日期和时间类的一个很好的替代品。

Joda Time提供计算日期和时间的功能,并支持几乎所有需要的日期格式,而且肯定难以用简单的JDK方法进行复制。

你知道这高效的12个Java精品库嘛?的更多相关文章

  1. 20172319 2018.10.12《Java程序设计教程》第6周课堂实践(补写博客)

    20172319 2018.10.12 <Java程序设计教程>第6周课堂测验 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王 ...

  2. Error:(12, 64) java: 未报告的异常错误java.io.IOException; 必须对其进行捕获或声明以便抛出

    Error:(12, 64) java: 未报告的异常错误java.io.IOException; 必须对其进行捕获或声明以便抛出 package com.test; import org.apach ...

  3. 深入理解java虚拟机-第12章Java内存模型与线程

    第12章 Java内存模型与线程 Java内存模型  主内存与工作内存: java内存模型规定了所有的变量都在主内存中,每条线程还有自己的工作内存. 工作内存中保存了该线程使用的主内存副本拷贝,线程对 ...

  4. Java长存!12个Java长久占居主要地位的原因

    Java长存!12个Java长久占居主要地位的原因 我们很容易就会遗忘那些曾经在猿群中大热而又被各种新技术掩盖直至堙灭的技术的价值.就拿COBOL这个老猿们当年所用的神器来说,就跟条死鱼一样被现代猿基 ...

  5. 2019.12.11 java程序中几种常见的异常以及出现此异常的原因

    1.java.lang.NullpointerException(空指针异常) 原因:这个异常经常遇到,异常的原因是程序中有空指针,即程序中调用了未经初始化的对象或者是不存在的对象. 经常出现在创建对 ...

  6. 《深入了解java虚拟机》高效并发读书笔记——Java内存模型,线程,线程安全 与锁优化

    <深入了解java虚拟机>高效并发读书笔记--Java内存模型,线程,线程安全 与锁优化 本文主要参考<深入了解java虚拟机>高效并发章节 关于锁升级,偏向锁,轻量级锁参考& ...

  7. String高效编程优化(Java)

    1, substring截取超大字符串可能造成的“内存泄漏” 2,+ 操作符的优化和局限 3,StringBuilder和StringBuffer 4,split和StringTokenizer做简单 ...

  8. Java基础知识强化12:Java中运用数组的四种排序方法

    1.使用JavaApi文档中的Arrays类中的sort()进行快速排序 首先我们直接看代码如下: package himi.text; import java.util.Arrays; public ...

  9. 【Java基础】12、java中方法的参数传递机制

    问:当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里到底是值传递还是引用传递?  答:是值传递.Java 编程语言只有值传递参数.当一个对象实例作为一个 ...

随机推荐

  1. Java安全之Fastjson反序列化漏洞分析

    Java安全之Fastjson反序列化漏洞分析 首发:先知论坛 0x00 前言 在前面的RMI和JNDI注入学习里面为本次的Fastjson打了一个比较好的基础.利于后面的漏洞分析. 0x01 Fas ...

  2. MySQL中MyISAM为什么比InnoDB查询快

    大家都知道在MySQL中,MyISAM比InnoDB查询快,但很多人都不知道其中的原理. 今天我们就来聊聊其中的原理,另外也验证下是否MyISAM比InnoDB真的查询快. 在探索其中原理之前,我们先 ...

  3. 使用Optional处理null

    一.聊聊NullPointerException   相比做Java开发的,见到NullPointerException肯定不陌生吧,可以说见到它深恶痛绝.在开发时认为不会出现NullPointerE ...

  4. [项目] 淘淘商城 Part.2

    商品列表查询 Easyui 商品添加 商品类目选择 图片上传 富文本编辑器使用 添加的实现 展示首页 略 分页插件 在SqlMapConfig.xml,配置一个plugin 在sql语句执行之前,添加 ...

  5. node.js的包加载机制

    加载一个模块 require('moduleName'); 现在核心模块中加载,如果核心模块中没有,那么就去node_modules目录下去找,核心模块的优先级最高. 如果加载模块式省略了文件的后缀名 ...

  6. [Python] Python工匠(Github)

    1.善用变量来改变代码质量 变量命名 变量要有描述性,不能太宽泛 BAD:day, host, cards, temp GOOD:day_of_week, hosts_to_reboot, expir ...

  7. 【转载】有图 KVM折腾记..

    KVM折腾记...https://lengjibo.github.io/KVM%E6%8A%98%E8%85%BE%E8%AE%B0/  Veröffentlicht am 2018-09-20 |  ...

  8. sosreport -a --report

    sosreport -a --report 时间:2019-09-28 本文章向大家介绍sosreport -a --report,主要包括sosreport -a --report使用实例.应用技巧 ...

  9. python类变量的分类和调用方式

    #!/usr/bin/python # -*- coding: UTF-8 -*- # 父类 class JustCounter: ''' 类变量:类变量在整个实例化的对象中是公用的.类变量定义在类中 ...

  10. 第14讲 | HTTP协议:看个新闻原来这么麻烦

    第14讲 | HTTP协议:看个新闻原来这么麻烦 http://www.163.com 是个 URL,叫作统一资源定位符. 之所以叫统一,是因为它是有格式的.HTTP 称为协议,www.163.com ...