# yanggu-common **Repository Path**: andy_yanggu/yanggu-common ## Basic Information - **Project Name**: yanggu-common - **Description**: 对javaweb常见项目中的统一异常处理、业务异常类、返回值封装类进行抽取 - **Primary Language**: Java - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-12-19 - **Last Updated**: 2025-09-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 提供统一定义 - 统一异常处理(GlobalExceptionHandler),默认启用,可以手动关闭 - 统一打印RestController请求和响应参数切面类(RequestResponseLogAspect),默认启用,可以手动关闭 - 操作日志切面类(OperationLogAspect),默认启用,可以手动关闭。使用spring event发布事件 - 脱敏注解(Desensitization),用于对参数进行脱敏处理 - 定义业务异常(BusinessException) - 定义异常枚举接口(IResultError) - 定义统一返回值封装类(Result) - controller返回值处理(ResultAdvice),默认启用,可以手动关闭 - 定义基本校验插件中新增、修改、删除和查询分组,包含默认分组(InsertGroup、UpdateGroup、DeleteGroup、QueryGroup) - 定义基本校验插件中新增、修改、删除和查询分组,不包含默认分组(InsertNoDefaultGroup、UpdateNoDefaultGroup、DeleteNoDefaultGroup、QueryNoDefaultGroup) - domain中定义各种javabean。分为dto、entity、query、vo四个包 - dto为controller方法新增和修改接收参数,直接透传到service即可。如果新增和修改业务差距较大,可单独定义新增和修改的dto。例如insertdto、updatedto - entity为数据库实体类,和数据库表字段一致,用于数据库操作。entity中不能新增字段,需要和表字段保持一致 - query封装controller层查询参数,直接透传到service层 - vo是controller方法查询返回参数,service层直接返回vo即可 - mapper接口新增和修改类请求使用entity。查询类请求接收query、返回entity或者vo - BaseMapstruct是进行各种javabean对象转换的基类,提供dto、entity、vo之间的转换。自定义接口继承该接口,传入相应的泛型 - BaseEntity中有通用字段,如创建时间、修改时间和删除状态三个字段 - BaseUserEntity继承自BaseEntity,同时增加包含创建用户、修改用户字段 - PageQuery是分页查询基类,自定义XXXQuery参数继承自该类即可 - BaseVO中有通用字段(创建时间、修改时间、删除状态、创建人和修改人),其他XXXVO可以继承该类,也可以不继承 - PageVO用于封装分页返回数据。pageNum为当前页码,pageSize为每页显示条数,total为总条数,records为具体数据。records中的泛型为XXXVO