EasyTrans 2.0.6 发布,让您少写 30% 的多表 sql
更新内容:
- 添加JDK17 支持
- 全局翻译开启的时候,可以使用@IgnoreTrans标记某个方法不用翻译
- 优化引用,解决很多项目的pom依赖冲突问题。
- 新增@TransDefaultSett 注解,可以配置PO的默认翻译字段,别名,数据源,唯一键等。
支持的 ORM 框架:
1、Mybatis Plus
2、JPA
3、 TK Mybatis
4、BeetlSQL
组件介绍:
表里我们经常存放字典码,外键 。给前端展示的时候要展示字典描述 (比如 sex 0 代表男),外键要显示 title/name (如 userid 1 要翻译为张三)。字典比较简单,很多项目都直接交给前端翻译,但是外键翻译是必须要后台来做的,最常见的做法就是 表 join ,这样又要自己写 sql 比较麻烦。使用 Easy Trans,只需要一个注解就可以搞定数据翻译。
支持的场景:
- 字典翻译 把 sex 0 翻译为男
- 普通外键翻译 / 唯一键翻译 框架使用 mp/jpa 能力自动帮你去执行 sql 根据外键查询 name/title 并且 set 到你的 vo 字段上
- 跨微服务翻译 比如 order (订单服务) user (用户服务) 是 2 个微服务,但是 order 要展示创建人姓名,表里只有 user id 可以使用跨微服务翻译
- 枚举翻译 把枚举中的汉字给到前端
Trans 注解:
程序员只需要掌握这一个注解就算熟练使用 EasyTrans 了,绝对不干让程序员掉更多头发的事情。
@Data @Builder @AllArgsConstructor @NoArgsConstructor //实现TransPojo 接口,代表这个类需要被翻译或者被当作翻译的数据源 public class Student implements TransPojo { // 字典翻译 ref为非必填 @Trans(type = TransType.DICTIONARY,key = "sex",ref = "sexName") private Integer sex; //这个字段可以不写,实现了TransPojo接口后有一个getTransMap方法,sexName可以让前端去transMap取 private String sexName; //SIMPLE 翻译,用于关联其他的表进行翻译 schoolName 为 School 的一个字段 @Trans(type = TransType.SIMPLE,target = School.class,fields = "schoolName") private String schoolId; //远程翻译,调用其他微服务的数据源进行翻译 @Trans(type = TransType.RPC,targetClassName = "com.fhs.test.pojo.School",fields = "schoolName",serviceName = "easyTrans",alias = "middle") private String middleSchoolId; // 枚举翻译,返回文科还是理科给前端 @Trans(type=TransType.ENUM,key = "desc") private StudentType studentType = StudentType.ARTS; public static enum StudentType{ ARTS("文科"), SCIENCES("理科"); private String desc; StudentType(String desc){ this.desc = desc; } } }
项目地址:https://gitee.com/fhs-opensource/easy_trans
文档地址:https://gitee.com/fhs-opensource/easy_trans/wikis

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
数仓性能调优:如何进行函数下推
摘要:本文主要描述下函数在满足特征的前提下可以把函数属性定义为下推属性。 本文分享自华为云社区《GaussDB(DWS)性能调优:函数下推》,作者:譡里个檔 。 DWS作为MPP架构的数仓产品,其性能优势主要在分布式计算上。默认情况下,DWS为了保证结果的正确性,自定义函数默认属性是不下推的,这会导致计算不下推,从而导致比较验证的性能问题。本文主要描述下函数在满足特征的前提下可以把函数属性定义为下推属性。 在展开介绍之前,我们先介绍一下DWS里面函数的几个属性 易变属性 下推属性 查询自定义的不下推函数 SELECT oid::regproc AS proname, (pg_get_functiondef(oid)).definition FROM pg_proc WHERE proshippable = false AND oid > 16384; 总结 函数下推要首先满足以下 函数的易变属性为IMMUTABLE和STABLE 函数的下推属性设置为SHIPPALE 可以在函数定义的时候指定SHIPPALE属性,可以通过ALTER语句修改函数的下推属性 点击关注,第一时...
- 下一篇
Simple Admin 分布式后台管理系统 v 0.1.0 更新啦
Simple Admin 是一个开箱即用的分布式微服务后端管理系统,基于go-zero开发,提供丰富的功能如服务发现,权限管理等。该框架可以帮助您快速开发具有RPC服务的后台管理系统。 软件特色: 最新技术栈:使用 gorm, casbin, kafka 等前沿技术开发 完全支持go-swagger: 直接在api文件内编写注释即可直接生成swagger文档 统一的错误处理: 整个系统拥有国际化的统一错误处理 国际化:内置完善的国际化方案 服务注册发现: 完善的服务注册发现机制,原生支持K8s 权限: 内置完善的动态路由权限生成方案, 集成RBAC权限控制 其他: 流量控制, ES服务 V 0.1.0 更新内容 新增 Prometheus 部署文件及文档,实现快速部署K8s监控 新增日志搜集部署文件及文档,支持EFK日志收集快速部署 新增 Oauth 第三方登录管理功能 新增字典管理功能 修复生成树错误 新增K8S部署全流程文档
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库
- CentOS8编译安装MySQL8.0.19
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7,8上快速安装Gitea,搭建Git服务器
- SpringBoot2整合Thymeleaf,官方推荐html解决方案
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- Red5直播服务器,属于Java语言的直播服务器
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7