我正在寻找一种禁用反向外键创建的方法。目前,querydsl maven插件在构建过程中自动创建InvForeignKey条目。 例如,
以下是来自pom的插件设置:
<plugin>
<groupId>com.mysema.querydsl</groupId>
<artifactId>querydsl-maven-plugin</artifactId>
<executions>
<execution>
<phase>generate-sources</phase>
<goals>
<goal>export</goal>
</goals>
</execution>
</executions>
<configuration>
<jdbcDriver>oracle.jdbc.driver.OracleDriver</jdbcDriver>
<jdbcUrl>${url}</jdbcUrl>
<jdbcUser>${username}</jdbcUser>
<jdbcPassword>${password}</jdbcPassword>
<schemaPattern>${schema}</schemaPattern>
<packageName>com.test.querydsl</packageName>
<targetFolder>${project.basedir}/target/generated-sources/java</targetFolder>
<tableTypesToExport>TABLE</tableTypesToExport>
<tableNamePattern>
CUSTOMER, PROVIDER
</tableNamePattern>
</configuration>
</plugin>
在我的情况下,我想只为表CUSTOMER(QCustomer)和PROVIDER(QProvider)生成类型,并且不保留有关ABRACADABRA的任何信息。但是,querydsl-plugin迫使我将不需要的表添加到tableNamePattern中,因为它会在QCustomer中生成类似的内容!
public final com.mysema.query.sql.ForeignKey<QAbracadabra> _fkabracadabra = createInvForeignKey(Arrays.asList(customerId), Arrays.asList("CUSTOMERID"));
有可能不以某种方式关闭它吗?我仍然希望生成正常的外键。