我正在使用
jooq-codegen
从我的数据库模式生成 Java 类,但我遇到了表名前缀的问题。例如,一个名为 t_user
的表最终会生成一个名为 TUser
的类,而我希望它是 User
(不带“T”前缀)。
如何配置
jooq-codegen
以在类生成期间从表名称中删除特定前缀?任何有关 XML 配置文件中可能的配置或解决方法的建议将不胜感激。
谢谢!
我检查了jOOQ文档,找到了添加前缀的示例,但似乎没有直接删除前缀的方法。
<configuration>
<generator>
<strategy>
<matchers>
<tables>
<table>
<tableIdentifier>
<transform>UPPER</transform>
<expression>T_$0</expression>
</tableIdentifier>
<tableClass>
<transform>PASCAL</transform>
<expression>T_$0</expression>
</tableClass>
</table>
</tables>
</matchers>
</strategy>
</generator>
</configuration>
这样做:
<configuration>
<generator>
<strategy>
<matchers>
<tables>
<table>
<!-- Match only relevant tables, capture the name suffix -->
<expression>T_(.*)</expression>
<!-- Reference the captured group $1 -->
<tableIdentifier>
<transform>UPPER</transform>
<expression>$1</expression>
</tableIdentifier>
<tableClass>
<transform>PASCAL</transform>
<expression>$1</expression>
</tableClass>
</table>
</tables>
</matchers>
</strategy>
</generator>
</configuration>