1、本次更新:
1、反向翻译支持PG、SqlServer、Oracle
2、支持SpringBoot3的JPA
3、添加Mybatis-flex支持
2、反向翻译介绍
2.1、痛点
相信大多数程序员都做过 Excel 导入,国内开源届已经有非常多且很好用的 Excel 导入导出工具如:Easy POI,Easy Excel,My Excel 等等。但是字典码 如男 ->gender 0,唯一键 username admin 翻译为 userId 1 此类反向翻译工作要写非常多的代码。Easy-Trans 的反向翻译功能只需要一个注解就可以搞定反向翻译,章节 2 我们来看看是如何使用的吧。
2.2、用法
2.2.1 字典翻译,可以把男翻译为 gender 0 并且自动赋值到 gender 属性上。
private String genderName = "男; @UnTrans(type=UnTransType.DICTIONARY,dict="gender",refs = {"genderName"}) private Integer gender;
2.2.2 自动联表
根据学校名称自动查询学校 id,并且赋值到 schoolId 属性。
private String schoolName; @UnTrans(type= UnTransType.SIMPLE,tableName = "t_school",refs = "schoolName",columns = "school_name",uniqueColumn = "id") private Integer schoolId;
根据多个字段 (组合唯一键) 查询主键赋值。
private String studentName; private String studentAge; @UnTrans(type= UnTransType.SIMPLE,tableName = "t_user",refs = {"studentName","studentAge"},columns = {"name","age"},uniqueColumn = "user_id") private Integer userId;
多表关联查询写法参考多个字段写法。
3、组件介绍
支持的场景:
- 字典翻译 把 sex 0 翻译为男
- 普通外键翻译 / 唯一键翻译 框架使用 mp/jpa 能力自动帮你去执行 sql 根据外键查询 name/title 并且 set 到你的 vo 字段上
- 跨微服务翻译 比如 order (订单服务) user (用户服务) 是 2 个微服务,但是 order 要展示创建人姓名,表里只有 user id 可以使用跨微服务翻译
- 枚举翻译 把枚举中的汉字给到前端
- 反向翻译 把汉字反向翻译为字典码 /id
亮点:
- 有效降低业务代码量
- 有着很好的微服务支持
-
有着很好的缓存支持
他们也在用:
小诺:https://gitee.com/xiaonuobase/snowy 5.6k star
maku-boot: https://gitee.com/makunet/maku-boot 11.3 k star
官网 / 文档站:
http://easy-trans.fhs-opensource.top/
4、支持的 ORM 框架
如果您使用了以下 ORM 框架都可以集成本插件做翻译:
- Mybatis Plus
- JPA(SB2/SB3)
- TK Mybatis
- BeetlSQL
- Mybatis Flex
还没有评论,来说两句吧...