Jooq模型生成中的字符集问题

Character Set Problem In Jooq Model Generation

我正在为我的后端 java 项目使用 PostgreSql 和 Jooq。 Postgre 字符集 UTF-8 归类 WIN1254 土耳其语。 示例 Table

品牌 -- TABLE

型号 -- TABLE

'I'字大'i'。它不是来自土耳其字母的“ı”。

Jooq 生成模型为 'BRANDİD' 和 'getBrandıd'。 'getBrandıd' 不允许在 html 中使用。 Spring 给出了这种用法的错误。我曾尝试为 jooq 模型生成更改字符集,但没有成功。不支持的字符将作为“?”插入到 java 模型代码中。我该如何解决这个问题?

最近有人在 jOOQ user group:

上提出了类似的问题

解决此问题的最简单方法是覆盖运行代码生成的 JVM 的默认区域设置。例如。使用:

set MAVEN_OPTS= -Duser.language=en

当然这可能是不稳定的,因为某些环境可能配置不正确。

另一种解决方法是编写自己的生成器策略:

目前没有任何方法可以指定代码生成区域设置,尽管应该有。有一个待处理的功能请求 https://github.com/jOOQ/jOOQ/issues/9744