我的项目需要我自己生成DAO和POJO。必须对其进行某些修改。我的SRS说我必须使用jOOQ。我第一次使用它;我知道jOOQ自己生成POJO和DAO,但我找不到禁用它的方法。
我在jOOQ的文档中找不到任何对我有帮助的东西。有人能告诉我如何从DAO和POJO代禁用jOOQ,但仍然提供记录吗。
Maven pom。xml文件如下:
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.jooq</groupId>
<artifactId>jooq-parent</artifactId>
<version>3.4.1</version>
</parent>
<groupId>org.jooq</groupId>
<artifactId>jooq</artifactId>
<name>jOOQ</name>
<licenses>
<license>
<name>Apache License, Version 2.0</name>
<url>http://www.jooq.org/inc/LICENSE.txt</url>
<distribution>repo</distribution>
</license>
<!-- [pro] xxx
xxxxxxxxx
xxxxxxxxxx xxxxxxx xxx xxxxxxxxxxx xxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
xxxxxxxxxx
xxxx [/pro] -->
</licenses>
<build>
<plugins>
<!-- XJC-generate JAXB artefacts. Contribution is the courtesy
of Sergey Epik -->
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<version>0.8.1</version>
<executions>
<!-- If this causes trouble in your Eclipse m2e lifecycle configuration, try using
http://m2eclipse.sonatype.org/sites/m2e/, instead of the official m2e Eclipse
plugin
-->
<execution>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<extension>true</extension>
<strict>false</strict>
<schemaDirectory>src/main/resources/xsd</schemaDirectory>
<bindingDirectory>src/main/resources/xjb</bindingDirectory>
<schemaIncludes>
<include>jooq-runtime-3.3.0.xsd</include>
</schemaIncludes>
<generatePackage>org.jooq.conf</generatePackage>
<args>
<arg>-Xxew</arg>
<arg>-Xxew:instantiate lazy</arg>
<arg>-Xxew:delete</arg>
<arg>-Xfluent-api</arg>
<arg>-Xdefault-value</arg>
<arg>-Xannotate</arg>
<arg>-Xinheritance</arg>
</args>
<plugins>
<plugin>
<groupId>com.github.jaxb-xew-plugin</groupId>
<artifactId>jaxb-xew-plugin</artifactId>
<version>1.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-fluent-api</artifactId>
<version>3.0</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-default-value</artifactId>
<version>1.1</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics-annotate</artifactId>
<version>0.6.2</version>
</plugin>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>0.5.3</version>
</plugin>
</plugins>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>2.1.0</version>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<supportedProjectTypes>
<supportedProjectType>jar</supportedProjectType>
</supportedProjectTypes>
<instructions>
<Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
<Export-Package>*</Export-Package>
<Import-Package>
javax.persistence;resolution:=optional,
org.apache.log4j;resolution:=optional,
*
</Import-Package>
<_versionpolicy>[$(version;==;$(@)),$(version;+;$(@)))</_versionpolicy>
</instructions>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.2</version>
<configuration>
<archive>
<!-- add the generated manifest to the jar -->
<manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
</archive>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>release</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<executions>
<execution>
<id>sign-artifacts</id>
<phase>verify</phase>
<goals>
<goal>sign</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<dependencies>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
<type>jar</type>
<scope>provided</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>integration</artifactId>
<version>1.6.1</version>
<type>jar</type>
<scope>provided</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<type>jar</type>
<scope>provided</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>javax.validation</groupId>
<artifactId>validation-api</artifactId>
<version>1.1.0.Alpha1</version>
<type>jar</type>
<scope>provided</scope>
<optional>true</optional>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<type>jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.jmock</groupId>
<artifactId>jmock-junit4</artifactId>
<version>2.6.0</version>
<type>jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.1</version>
<type>jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>1.7</version>
<type>jar</type>
<scope>test</scope>
</dependency>
</dependencies>
而且构建使用了gradle。我也不知道这会对更改产生什么影响。
该项目是使用gradle构建的。所以所有依赖项的配置都被重定向到build.gradle。帮助我改变jooq属性的构建文件的摘录是:
jooq
{
generator
{ generate
{ relations = true
deprecated = false
records = true
immutablePojos = false
daos = false
fluentSetters = true
}
target { packageName = '...' }
该文件无法从项目目录中访问,但我可以在此处编辑!!
我试图自动生成刀的视图。我已经预先设置了配置: whitch为表生成dao,但不为视图生成dao。根据文件规定: 如果您使用的是jOOQ的代码生成器,那么可以将其配置为为为您生成POJO和DAO。然后,jOOQ为每个UpdateRecord生成一个DAO,即为每个表生成一个单列主键。 和 公共接口 它表示来自表或视图的记录-表记录其基础表或视图具有“主唯一键”,即主键或至少一个唯一键jOOQ使用“
我想使用DAO将生成的Pojo添加到数据库中。但我收到一个异常,不知道如何解决它。 我尝试添加一个公共。队伍在每一张桌子前面。 在DAO使用中插入部队: 使用的数据库文件: JOOQ一代,我还尝试了unqualifiedSchema=main: 数据库类只是一个返回基本数据的单例: 错误,当我使用基于文件的数据库并访问它时,所需的表似乎在那里:
试图用Joda DateTimes生成JooQ POJOs,我遇到了一些问题。POJO使用默认的java.sql从生成器中生成。时间戳值,而不是日期时间。 代码如下。 Create Table(此处时间戳字段的名称已更改)希望确保我没有命中构建系统中的某个缓存。此名称仍应与下面的正则表达式匹配。 转换类——基于文档。 Jooq配置XML。基于文档(感谢您捕获我的表达式/表达式错误Luke)! 创建
我正在使用jooq为我的H2 db表生成pojo 但是生成的代码(如下) 缺少@GeneratedValue注释,这使得无法使用spring data rest repository插入新记录,因为传入的对象总是抱怨没有设置id字段。 我可以做什么配置/工作来让jooq正常工作? 下面是我用来在编译时生成pojo的相关pom文件部分: 变通方法 在添加该功能之前,遇到相同问题的任何人都可以选择替换
问题内容: 有谁能告诉我如何强制Maven在具有包路径的自动生成的hibernate.cfg.xml文件中映射.hbm.xml文件之前? 我的总体想法是,我想通过maven使用hibernate- tools为我的应用程序生成持久层。因此,我需要hibernate.cfg.xml,然后是所有my_table_names.hbm.xml,最后需要生成POJO。但是,当我将* .hbm.xml文件放入
问题 在代码生成期间,我在配置到自定义POJO的映射时遇到了一些问题。 问题 我已经实现了,但想知道如何注册它以在代码生成阶段使用,或者即使这是可能的? 更多上下文 我喜欢波霍斯 如果有帮助,我将使用DefaultConfiguration对象(一个bean)配置jOOQ: 然后对于代码生成,我在gradle中配置它: 我确信这两种配置之间存在脱节,但我无法从文档中了解如何同步这些配置。理想情况下