Skip to content

**开源数据对比、转换工具,强大的可插拔、非侵入式设计,两种数据转换结构,如女朋友般优雅、丝滑。

License

Notifications You must be signed in to change notification settings

15738383930/stars-datachange

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

stars-datachange

stars-datachange

介绍

**开源数据对比、转换工具,强大的可插拔、非侵入式设计,两种数据转换结构,如女朋友般优雅、丝滑。

软件架构

基于springboot、springboot-web、mybatis、lombok

安装教程

导入**数据转换依赖即可

<!-- https://mvnrepository.com/artifact/com.gitee.xuan_zheng/stars-datachange -->
<dependency>
    <groupId>com.gitee.xuan_zheng</groupId>
    <artifactId>stars-datachange</artifactId>
    <version>1.7.2</version>
</dependency>

GitHub传送门

Demo Project

Demo project url

使用说明(方式一:数据字典枚举)

1. 定义数据字典枚举,demo可在依赖包中找到,如下图:

数据字典枚举

2. 标记要使用数据转换功能的数据模型,如下图:

数据模型

3. 执行

数据转换

使用说明(方式二:动态数据字典)

ps:动态数据字典模式,需要你的项目连接数据库。

1. 找到你的字典表(没有请参考下图创建),如下图:
ps:图中字段都可自定义(详见步骤二),这里按图中字段讲解:
    1.1 code——对应属性的字典代码
    1.2 name——对应属性的字典值(也就是你要的结果)
    1.3 type——对应属性的名称(下图中,第一行数据是后几行数据的父级,用parent_id声明【parent_id、id等字段都可自定义】)

字典表

2. 在配置文件中加入数据字典配置(图中几个属性分别对应表名和表中字段),如下图:

数据字典配置

3. 在配置文件中追加mapper-locations配置【classpath*:mapper/*.xml】(多个配置以逗号分隔),如下图:

mapper-locations配置

4. 标记要使用动态数据转换功能的数据模型,如下图:
ps: 需要切换到DB源模式,modelName——数据模型名称(值默认为首字母小写的数据模型名称),对应字典表中父字典的列——type的值(建议用数据模型的名称,首字母小写)

标记数据模型

5. 执行

数据转换

两种使用方式区别

1.  字典枚举:配置步骤少,定义的字典枚举可作为常量进行条件判断;字典值是静态的,不易维护

字典枚举作为常量

2.  数据字典:可以动态维护数据字典;配置步骤略多,需要字典进行条件判断时,需要定义常量

参与贡献

  1. 感谢 SpringBootStarter 提出的建设性见解
  2. 感谢 Speciallei 提供的logo原型
  3. 感谢 xuhb20 支持了¥20:找了好久,非常感谢!

再次感谢大家的支持!

反馈交流

  • QQ交流群:322536109

版本更新说明

  • v1.7:添加了属性别名配置;添加了默认数据字典的全表查询逻辑;mapper配置文件目录更换 v1.7特色
  • v1.6.0:添加了数据转换反转功能;添加了非数据库项目环境下的使用配置 v1.6.0特色
  • v1.5.0:修复了springboot依赖漏洞;(重点)添加了动态数据字典自定义功能 v1.5.0特色
  • v1.4.0:明确了项目特色:如女朋友般优雅、丝滑;添加了项目启动banner;优化了n次代码结构,看上去更加丝滑~ v1.4.0特色
  • v1.3.0:优化了代码结构;减少了开发者的编码量;定义了字典枚举的规范;添加了自定义数据转换(k-v互转)v1.3.0新特性
  • v1.2.0:由v1.1.2变更为v1.2.0(较大升级)v1.2.0新特性
  • v1.1.2:修复了数据转换时,通用父类导致的数据转换异常;添加了属性映射模式的数据转换功能。
  • v1.1.1:注解兼容模块优化;
  • v1.1.0:添加了自定义注解兼容模块(详见:DataChangeCompatibleConfig.java);
  • v1.0.x:完成了基本数据转换、数据对比等功能;

About

**开源数据对比、转换工具,强大的可插拔、非侵入式设计,两种数据转换结构,如女朋友般优雅、丝滑。

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages