# g2rain-common(公共基础类)

g2rain-common 是企业级 Java 基础工具库,面向分布式系统开发提供核心组件与实用工具集合,重点覆盖:统一异常、Web 会话管理、通用数据模型、以及 JSON 编解码增强等。

# 核心特性

  • 事件同步与消息分发(分布式事件处理、消息存储管理、线程安全上下文)
  • JSON 处理增强(高精度序列化、RawNumberDeserializer 避免精度丢失、可配置 JsonCodecBuilder
  • 统一异常处理(BusinessException / BaseError / FieldErrorErrorCode 错误码规范、国际化错误消息)
  • Web 会话管理(多身份类型:USERPASSPORTAPPAPP_TENANT 等;支持 Token JWT + DPoP JWT 封装)
  • 通用数据模型(Result 统一响应、PageData 分页结构、BasePo 持久化基类、DTO/VO 基类)
  • 实用工具集(字符串/集合/常量工具类、ID 生成接口等)

# 环境要求

  • Java:21+
  • Maven:3.6+

# Maven 依赖

<dependency>
  <groupId>com.g2rain</groupId>
  <artifactId>g2rain-common</artifactId>
  <version>1.0.1</version>
</dependency>

# 基本使用示例

# JSON 编解码

JsonCodec codec = JsonCodecFactory.instance();
String json = codec.obj2str(myObject);
MyObject obj = codec.str2obj(json, MyObject.class);

# 统一响应

Result<User> result = Result.success(user);
Result<PageData<User>> pageResult = Result.successPage(1, 10, 100, users);
Result<Void> errorResult = Result.error("USER_NOT_FOUND", "用户不存在", userId);