关于mybatis反向生成的时候,对于数据库当中的数据类型是text的处理。

今天在帮一个同事通过mybatis生成实体类的时候,出现了表当中数据类型为text类型在转换的过程当中出现生成了一个文件 

在这里这个文件的文件名称为testWithBLOBs,他会在这个实体类额基础上在加入一个WithBLOBs。而且他还是继承了test类。

public class testWithBLOBs extends test {

private String id;

}

生成的目录结构如下:

同时我们看到在生成的xml文件当中的数据类型是这样的。

 

 text类型的数据被转换为longvarchar的形式。在这里我们想要将数据类型在转换的时候生成的是varchar的类型。我们只要在table标签当中设置即可。

<table domainObjectName="test" tableName="order">
<property name="useActualColumnNames" value="true"/> <!-- 这个属性值是变量名称和数据库当中的变量名称保持一致 -->
<columnOverride column="id" javaType="java.lang.String" jdbcType="VARCHAR" />
<columnOverride column="billid" javaType="java.lang.String" jdbcType="VARCHAR" /><!--这里是将text类型的变量转换为varchar类型。 -->
<columnOverride column="dishid" javaType="java.lang.String" jdbcType="VARCHAR" />
<columnOverride column="orderperson" javaType="java.lang.String" jdbcType="VARCHAR" />
</table>

这里设置了两个参数,一个是生成的实体类和数据库的大小写保持一致,

另外一个是将表中数据类型为text类型的转换为varchar类型。

 

posted on 2018-08-01 18:29  gxg123  阅读(488)  评论(0编辑  收藏  举报

导航