Mybatis 逆向工程时,生成了一个 xxxKey 实体类(或者xxxWithBlos类)

    在做Mybatis 逆向工程生成 Javabean 时,结果发现生成多了一个 xxxKey 实体类,经过一番百度后知道了生成这个实体类的原因是表中存在联合主键,然后为了便于代码的重构,把实体和实体的关系隔绝到两个类,互相不干扰。

    生成类如下图:
Mybatis 逆向工程时,生成了一个 xxxKey 实体类(或者xxxWithBlos类)_第1张图片

     由于表 Answersheet 和表 Score 中都存在联合主键,然后一个表直接生成对应的三个 JavaBean(xxx,xxxExample,xxxKey)

      如果想要正常生成,即不生成 xxxKey 实体类,只要在逆向工程的配置文件中的 context 标签里加上这个 defaultModelType="flat" 属性即可。(defaultModelType 为控制生成类方式)

加上之后再生成一次,结果发现这个 xxxKey 实体类没有了

Mybatis 逆向工程时,生成了一个 xxxKey 实体类(或者xxxWithBlos类)_第2张图片

---------------------------------------------------------------------------------------------------------------------

补充一下:

       最近用mybatis的逆向工程生成代码的时候,发现的类多了一个 xxxWithBlos的类,经过了解,这是因为数据库表中的一个字段是text 类型,而 mybatis 逆向工程生成类时,会为这个字段单独生成一个 xxxWithBlos 的类

这样做的原因是:

       text类型长度最大是65535,如果不用 blob 类型,就不能保证不溢出

解决:

       用以上解决生成xxxKey的方法即可

 

经过实践本人用以下方式不知道为什么是不可以的,如果上面的方式无效,可以尝试下这种,也许可以



		
		

 

你可能感兴趣的:(mybatis)