mybatis生成器生成实体不要get set 方法
时间: 2023-08-30 22:01:27 浏览: 259
mybatis生成器生成实体不包含get set方法是因为默认情况下,mybatis生成器会根据数据库表结构来生成对应的实体类,其中包含了表中每个字段的私有属性,并且为每个属性生成了对应的get和set方法。
然而,在某些情况下,我们可能希望实体类只作为DTO(Data Transfer Object)而不涉及具体的业务逻辑,这时可以通过配置来实现生成的实体类不包含get set方法。
我们可以在mybatis生成器的配置文件(一般是xxxGenerator.xml)中的实体类配置部分(table标签下的domainObjectRenamingRule元素)进行修改。在domainObjectRenamingRule元素下,添加一个或多个renameRule元素来指定不希望生成get set方法的属性。
举个例子,假设我们有一个表名为User,该表有id、username和password三个字段,我们希望生成的实体类只包含这三个私有属性,而不生成get set方法。配置如下:
```xml
<domainObjectRenamingRule>
<renameRule searchString="id" replaceString="" />
<renameRule searchString="username" replaceString="" />
<renameRule searchString="password" replaceString="" />
</domainObjectRenamingRule>
```
在这个配置中,我们把所有字段的get set方法名字设为空字符串,这样在生成的实体类中就不会包含get set方法了。
需要注意的是,这种配置方式会对所有的表和字段生效,如果只想对特定的表或字段生效,可以在对应的renameRule元素上添加condition属性,并指定满足条件的表和字段名称。
阅读全文