https://blog.csdn.net/dax1n/article/details/67040005
Java 内容差异比较库 Diffator
Diffator 是一个 Java 实现的双向的内容差异 diff 比较库,相似度范围 0.0 ~ 1.0
文本相似度算法
java文件增量对比库 sync4java [国产]
java文件增量对比库。 使用滚动算法对比两个文件的差异部分, 最终计算出所有的差异值, 将差异值与原始文件合并可得到新的文件
Java 资源加载库 Azzet
Azzet 是一个简单的 Java 类库,用于从不同的源中加载资源
https://github.com/ClickerMonkey/Azzet
lzmajio
LZMA压缩输入输出流的Java实现。
https://github.com/league/lzmajio
camel-name-utils [国产]
用处 用来将字符串在驼峰风格跟下划线风格之间切换。对于一般人可能没用,对于写orm框架的人有点作用。 例子: company_name -> companyName
org.crazycake
camel-name-utils
1.0.0-RELEASE
跨语言 Bloom filter 实现 Inbloom
Inbloom 是跨语言的 Bloom filter 实现。Bloom filter 是由 Howard Bloom 在 1970 年提出的二进制向量数据结构,它具有很好的空间和时间效率,被用来...
https://github.com/EverythingMe/inbloom#java
SlicedBread
SlicedBread 是一个用于简化 Java 多线程程序编写的类库
定宽文本解析库 uniVocity-parsers
uniVocity-parsers 是一个开源的Java项目。 针对CSV/TSV/定宽文本文件的解析,它以简洁的API开发接口提供了丰富而强大的功能。后面会做进一步介绍。 和其他解析库有所不同...
Facebook Java 项目库 Facebook jcommon
jcommon 是 Facebook Java 项目用到的库,包括并发,集合,zookeeper,stats/analytics,配置,测试等等库。
com.facebook.jcommon
jcommon-all
0.1.31
JSON转Java Bean工具 org-json-parsetool [国产]
一、简介 一款轻量级 Android JSONObject 转 Java Bean 工具
命令行参数解析框架 Climax
Climax 是一个 Java 的命令行参数解析框架
命令行参数解析工具包 CmdOption
CmdOption 是一个简单的注解驱动的命令行参数解析工具包,你所需要做的就是简单配置对象,每个字段和方法通过注解来定义。
阿里云 OSS 工具 Aliyun-Oss-Sign-URL
Aliyun-Oss-Sign-URL 是阿里云 OSS(针对私有bucket)的加签工具、外链工具 不依赖不依赖阿里云 OSS sdk、第三方工具包 Java、Android 平台都可以使用
SHA 算法类 Sha4j
Sha4j是一个实现了SHA-1,SHA-224,SHA-256,SHA-384和SHA-512加密算法的class
https://sourceforge.net/projects/sha4j/
https://github.com/maniempire/emp-exp-mngt/blob/master/PIDUTIL/src/com/pid/util/Sha4J.java
bean转化的利器 mapping4java [国产]
mapping4java,bean转化的利器,性能上快上beanutils 10倍,功能上比cglib丰富很多
Word文档生成 TinyDocGen [国产]
序言 Word文档生成在许多项目中都是需要的,目前来看有两种方案,一种是通过Apache POI工具包、iText来生成,另外一种是利用Office Open Xml规范来进行生成
Commons Chain
Commons Chain 是一个实现了责任链设计模式的 Java 类库
目录比较同步助手 Direetory Helper
Direetory Helper 是一个用JAVA可视化的目录文件同步助手,可以比较两个目录的结构不同,然后复制不同的数据进行同步。 程序运行需要JRE1.7运行环境
HTML恶意代码过滤 AntiSamy
它是一个可确保用户输入的HTML/CSS符合应用规范的API。换句话讲,这个API可以确保用户无法在HTML中提交恶意代码,这些恶意代码提交通常 被用于用户输入的个人资料、评论等会被服务端持久化
https://blog.csdn.net/zer0_o/article/details/28399533
Commons CSV
Commons CSV 是一个用来读写各种 Comma Separated Value (CSV) 格式文件的 Java 库
org.apache.commons
commons-csv
1.5
Java的CSV解析包 CSVBeans
CSVBeans 是一个 Java 的类库,用来解析和处理 CSV 格式的文件,并转成 Java 的Bean,无须编写解析的逻辑。
网页正文抽取算法 ContentExtractor [国产]
简介 ContentExtractor 是一个开源的网页正文抽取工具,用JAVA实现,具有非常高的抽取精度。 算法 ContentExtractor的网页正文抽取算法使用的是CEPR
Java 常用工具包 JCake [国产]
JCake是整合了目前Java开发过程中使用最多的:字符串处理、日期处理、邮件处理、文件处理、任务调度处理、HTTP请求处理、MD5/AES加密解密处理的一系列工具类
https://github.com/keaijohnee/JCake
Commons codec
Commons项目中用来处理常用的编码方法的工具类包,例如DES、SHA1、MD5、Base64等等
yaml 的 java 实现 JYaml
JYaml 是 yaml 的 java 实现,jyaml 在除了能够解析 yaml 文件外,还提供了非常方便的配置文件读取功能,比如映射属性到 Java Bean Yaml 可以映射List
YAML解析器 SnakeYAML
SnakeYAML是针对java语言的YAML解析器。 特性: 完整的 YAML 1.1解析器。尤其是,SnakeYAML能够分析来自于规范的所有示例; 支持Unicode
Java本地方法封装库 JNA
JNA(Java Native Access )提供一组Java工具类用于在运行期动态访问系统本地库(native library:如Window的dll)而不需要编写任何Native/JNI代
OpenDocument文档转换器 JODConverter
JODConverter一個Java的OpenDocument 文件轉換器,可以進行許多文件格式的轉換,它利用OpenOffice所提供的轉換介面來進行轉換工作,它能進行底下的轉換工作
http://www.cnblogs.com/luckyxiaoxuan/archive/2012/06/14/2549012.html
字符集编码的自动识别 jchardet [推荐]
jchardet是mozilla自动字符集探测算法代码的java移植。这个算法的最初作者是frank Tang,C++
文本编码自动检测 cpdetector
一个可以自动检测文本编码格式的项目 detector按照“谁最先返回非空的探测结果,就以该结果为准”的原则返回探测到的 字符集编码。 使用需要用到三个第三方JAR包:antlr.jar
编码检测工具 juniversalchardet
Mozilla在很多年前就做了一个非常优秀的编码检测工具,叫chardet(java版jchardet ),后来有发布了算法更加优秀的universalchardet
ETL数据导入/导出工具 HData [推荐] [国产]
HData是一个异构的ETL数据导入/导出工具,致力于使用一个工具解决不同数据源(JDBC、Hive、HDFS、HBase、MongoDB、FTP、Http、CSV、Excel、Kafka等)
Html2Image
Html2Image 是一个 Java 类库,可将 HTML 存为 GIF\PNG 和 JPG 图像,并通过
Java简繁体中文互换 java-zhconverter [国产]
java-zhconverter是一个简繁体中文互换的Java开源类库。
IP 到地名映射库 ip2region [国产]
ip2region - 准确率99.9%的ip地址定位库,0.0x毫秒级查询,数据库文件大小只有1.5M,提供了java,php,c,python,nodejs,golang查询绑定和Binar...
https://github.com/lionsoul2014/ip2region
分布式事务管理器 ByteTCC [国产]
ByteTCC是一个基于TCC(Try/Confirm/Cancel)机制的分布式事务管理器。兼容JTA,可以很好的与Spring容器进行集成
---预输入搜索 Cleo
Cleo 是一个灵活的软件库用于处理一些预输入和自动完成的搜索功能,该项目是 LinkedIn 公司的开源项目。 LinkedIn Typeahead 对该项目的详细介绍请看 linkedin
Aspose.Slides for Java
Aspose.Slides for Java 是一个 Java 组件,用来操作 PowerPoint 幻灯片文档,无需安装 PowerPoint 环境,可导出到 PDF、嵌入音频和视频链接
Java文件监控库 jpathwatch
jpatchwatch 是一个 Java 的库用来监控指定目录的文件变更,使用操作系统本身的功能实现,避免轮询。 可监控的操作包括: 文件创建和删除 文件修改 文件重命名 子目录修改 目录失效
高性能内存消息和事件驱动库 Chronicle
Chronicle 是一个超低延迟、高吞吐、持久化的消息和事件驱动的内存数据库,延迟只有16纳秒以及支持每秒钟 500-2000 万消息/记录。
@Test
public void ip() throws IOException {
String fileName = "D:\\mytest\\ip2region-master\\data\\ip.merge.txt";
List datas = Files.readAllLines(Paths.get(fileName));
AtomicLong count = new AtomicLong();
try {
for(String value : datas) {
String ip = value.split("\\|")[0];
if (StringUtils.isBlank(ip)) {
continue;
}
String ipValue = ip.substring(0, ip.lastIndexOf(".")) +"."+RandomUtils.nextInt(1,225);
String url = "http://www.ip138.com/ips138.asp?ip="+ipValue+"&action=2";
Document doc = Jsoup.connect(url).get();
Elements elements = doc.body().select("table");
Elements tab = elements.eq(2);
System.out.println(tab.select("tr").eq(1).select("td").select("h1").text().replace("您查询的",""));
System.out.println(tab.select("tr").eq(2).select("td").select("li").text());
// System.out.println(elements.eq(2).toString());
count.incrementAndGet();
// try {
// Thread.sleep(1000);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }
}
} catch (IOException e) {
e.printStackTrace();
}finally {
System.out.println("查询次数:"+count.get());
}
}
批量查询3000次就禁了