You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过PostgreSQL查询生成Spring Boot接口投影的Getter代码

用PostgreSQL查询生成Spring Boot接口投影的Getter方法

你需要生成UserAccess接口中的Optional类型Getter方法,无需手动编写,可以通过PostgreSQL查询直接生成对应的代码片段,步骤如下:

1. 编写PostgreSQL生成查询

根据数据库字段的类型和命名,执行以下SQL查询(替换成你实际涉及的表/视图名称):

SELECT CONCAT(
    '    Optional<', 
    CASE data_type
        WHEN 'bigint' THEN 'Long'
        WHEN 'character varying' THEN 'String'
        WHEN 'boolean' THEN 'Boolean'
        ELSE 'Object' -- 其他数据类型可按需补充映射
    END, 
    '> get', 
    INITCAP(REPLACE(column_name, '_', '')), 
    '();'
) AS method_definition
FROM information_schema.columns
WHERE table_name IN ('user_table', 'role_table', 'form_table', 'form_tab_table', 'branch_table', 'entity_table', 'org_table') -- 替换为你的实际表名
ORDER BY ordinal_position;

2. 理解查询逻辑

  • 类型映射:通过CASE语句将PostgreSQL原生类型转换为对应的Java包装类型(如bigint→Long)
  • 方法名转换:用REPLACE去掉字段名的下划线,再用INITCAP将首字母大写,拼接成符合Java规范的Getter方法名(如user_id→getUserId)
  • 代码拼接:将类型、方法名组合成完整的Optional getter方法定义

3. 生成并使用代码

执行查询后,将结果集中的method_definition列内容复制出来,直接放到UserAccess接口中即可,无需手动逐行编写。

注意:如果涉及多表关联的自定义字段(如user_role_read_only),可以将这些字段手动加入查询,或者创建一个包含所有所需字段的视图,直接查询视图的字段信息来生成代码。

内容的提问来源于stack exchange,提问作者ranidu harshana

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 21:15:05