<plugin>
<groupId>org.jooq</groupId>
<artifactId>jooq-codegen-maven</artifactId>
<version>3.15.3</version>
<executions>
<execution>
<id>generate-jooq-classes</id>
<phase>generate-sources</phase>
<goals>
<goal>generate</goal>
</goals>
</execution>
</executions>
<configuration>
<jdbc>
<driver>com.mysql.jdbc.Driver</driver>
<url>jdbc:mysql://localhost:3306/mydatabase</url>
<user>username</user>
<password>password</password>
</jdbc>
<generator>
<name>org.jooq.codegen.JavaGenerator</name>
<database>
<name>org.jooq.meta.mysql.MySQLDatabase</name>
<includes>.*</includes>
</database>
<target>
<packageName>com.example.generated</packageName>
<directory>target/generated-sources/jooq</directory>
</target>
</generator>
</configuration>
</plugin>
DSLContext context = DSL.using(SQLDialect.MYSQL);
SelectQuery<Record> query = context.selectQuery();
query.addFrom(AUTHOR);
query.addSelect(AUTHOR.FIRST_NAME, AUTHOR.LAST_NAME);
query.addConditions(AUTHOR.ID.eq(1));
Result<Record> result = query.fetch();
for (Record record : result) {
String firstName = record.getValue(AUTHOR.FIRST_NAME);
String lastName = record.getValue(AUTHOR.LAST_NAME);
System.out.println("Author: " + firstName + " " + lastName);
}