怎么自定义对象ID类型

Blade 未结 1 718
hrz0828
hrz0828 2021-07-27 11:00

一、该问题的重现步骤是什么?

1. BaseEntity id为Long 无法改为String 

2. BaseEntity 的子类无法自定义ID类型

3.不继承BaseEntity service泛型会报错


二、你期待的结果是什么?实际看到的又是什么?

我期待自定义ID数据类型


三、你正在使用的是什么产品,什么版本?在什么操作系统上?

版本 

 BladeX 2.8.1.RELEASE

四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

业务需求需要部分表需要字符串ID,但是BaseEntity不支持自定义

1条回答
  •  admin
    admin (楼主)
    2021-07-27 11:56

    BaseEntity固定为Long类型的主键,因为整个系统当时都是定为Long模式,如果你想修改成String,那其他的例如roleId、deptId、userId等等全部都要修改,这个工作量很大,所以就不推荐修改了。

    当然你想修改的话也很简单,你到对应的包拷贝这三个类,到一个新的目录,并将Long主键改成String,后续的业务模块如果要用到string类型id,继承自己新建的这一套就行。image.png

    0 讨论(0)
提交回复