网站首页 > java教程 正文
Release Notes
- 1、【新增】JsonRpc模块:一个轻量级、跨语言远程过程调用实现,基于json、http实现(从XXL-JOB底层通讯组件提炼抽象)。
- 2、【新增】Concurrent模块:一系列并发编程工具,具备良好的线程安全、高并发及高性能优势,包括CyclicThread(循环线程)、MessageQueue(高性能内存队列,30W+ TPS)等。
- 3、【新增】Auth模块:一系列权限认证相关工具,包括JwtTool等。
- 4、【强化】已有工具能力完善,包括 CollectionTool、MapTool、HttpTool 等;
- 5、【升级】升级依赖版本,包括 slf4j、poi、spring、gson、junit等。
JavaScript 代码示例:JsonRpc 用法
一个轻量级、跨语言远程过程调用实现,基于 json、http 实现。
第一步 :RPC 业务服务开发 #技术分享 #掘金
public interface UserService {
public ResultDTO createUser(UserDTO userDTO);
public UserDTO loadUser(String name);
... ...
}
第二步 :JsonRpc 服务端配置
JsonRpcServer jsonRpcServer = new JsonRpcServer();
jsonRpcServer.register("userService", new UserServiceImpl());
@RequestMapping("/openapi") @ResponseBody public String api(@RequestBody(required = false) String requestBody){ return jsonRpcServer.invoke(requestBody); }
第三步 :JsonRpc 客户端配置
// 方式1:代理方式使用 (针对接口构建代理,通过代理对象实现远程调用;)
UserService userService = new JsonRpcClient("http://localhost:8080/jsonrpc", 3000).proxy("userService", UserService.class)
// 发起 RPC 请求;UserDTO result = userService.loadUser("zhangsan")
代码示例:MessageQueue(高性能内存队列)
高性能内存队列,单机支持 30W+ TPS,具备良好的性能及高并发优势,支持生产消费模型。
MessageQueue<String> messageQueue = new MessageQueue<>(
"demoQueue",
messages -> {
System.out.println("Consume: " +
}, 10, 20 );
messageQueue.produce("test-" + i);
代码示例:TimeWheel(时间轮)
时间轮算法实现,具备高精度、多任务、以及线程安全等优势。
TimeWheel timeWheel = new TimeWheel(60, 1000);
timeWheel.submitTask(System.currentTimeMillis() + 3000, () -> { System.out.println("Task delay " +
});
代码示例:Jwt权限认证
JWT 工具,提供 JWT 生成及解析能力
// a、JwtTool 初始化,自定义 Signer和 Verifier
JwtTool jwtTool = new JwtTool(SECRET)
// b、创建 token String token = jwtTool.createToken( {用户标识}, {自定义声明数据,map 形式}, {自定义过期时间} ) // c、验证 token boolean isValid = jwtTool.validateToken(token) // d、获取 claim Object userId = jwtTool.getClaim(token, {自定义声明数据 key}) // e、获取过期时间 Date expirationTime = jwtTool.getExpirationTime(token)
简介
XXL-TOOL 是一个 Java 工具类库,致力于让 Java 开发更高效。包含 “集合、字符串、缓存、并发、Excel、Emoji、Response、Pipeline……” 等数十个模块。
文档地址
- 中文文档: www.xuxueli.com/xxl-tool/
- Github: github.com/xuxueli/xxl…
组件列表
| 模块 | 说明 | | ---
| Core 模块 | 包含集合、缓存、日期……等基础组件工具。| | Gson 模块 | json 序列化、反序列化工具封装,基于 Gson。| | Json 模块 | json 序列化、反序列化自研工具 。| | Response 模块 | 统一响应数据结构体,标准化数据结构、状态码等,降低协作成本。| | Pipeline 模块 | 高扩展性流程编排引擎。| | Excel 模块 | 一个灵活的 Java 对象和 Excel 文档相互转换的工具。一行代码完成 Java 对象和 Excel 之间的转换。| | Emoji 模块 | 一个灵活可扩展的 Emoji 表情编解码库,可快速实现 Emoji 表情的编解码。| | Freemarker 模块 | 模板引擎工具,支持根据模板文件实现 动态文本生成、静态文件生成 等,支持邮件发送、网页静态化场景。| | IO 模块 | 一系列处理 IO(输入/输出)操作的工具。| | Encrypt 模块 | 一系列处理编解码、加解密的工具,包括 Md5Tool、HexTool、Base64Tool...等。| | Http 模块 | 一系列处理 Http 通讯、IP、Cookie 等相关工具。| | JsonRpc 模块 | 一个轻量级、跨语言远程过程调用实现,基于 json、http 实现(对比传统 RPC 框架:XXL-RPC)。| | Concurrent 模块 | 一系列并发编程工具,具备良好的线程安全、高并发及高性能优势,包括 CyclicThread(后台循环线程)、MessageQueue(高性能内存队列,30W+
| Exception 模块 | 异常处理相关工具。| | Auth 模块 | 一系列权限认证相关工具,包括 JwtTool...等。| | ... | ... |
猜你喜欢
- 2025-08-05 java-socket长连接demo体验
- 2025-08-05 Java如何从pod内部访问k3s集群API
- 2025-08-05 Redis教程——数据类型(基数统计、地理空间、位域)
- 2025-08-05 django python数据中心、客户、机柜、设备资源管理平台源码分享
- 2025-08-05 java redis 客户端生产环境基本操作
- 2025-08-05 服务压测发现怪异现象,一顿排查,揪出“TIME_WAIT”这个内鬼
- 2025-08-05 稳定代理IP深入解析:辨别、获取与利用全攻略
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)
本文暂时没有评论,来添加一个吧(●'◡'●)