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

JPA是否提供通过firstName查询Customer实体的内置方法?

JPA按FirstName查询Customer实体的正确写法

你的问题出在查询方法的命名上,JPA的查询方法命名规则不允许用连字符,且必须遵循驼峰命名规范来对应实体类的属性名。

正确的基础查询写法

如果你的Customer实体类里有firstName这个属性(对应数据库first_name字段的话,JPA会自动处理驼峰与下划线的映射),直接用驼峰式命名方法即可:

Customer findByFirstName(String firstName);

JPA会自动生成对应的SQL,查询first_name字段等于传入参数的记录。

扩展查询写法

如果需要更灵活的查询,可使用以下几种方式:

  • 前缀/后缀模糊匹配:
List<Customer> findByFirstNameLike(String firstName);
// 使用时传入 "%张三" 或 "张三%" 实现前缀/后缀匹配
  • 全包含匹配(自动在参数前后加%):
List<Customer> findByFirstNameContaining(String firstName);
// 传入"张三"会自动生成 LIKE '%张三%'
  • 忽略大小写查询:
Customer findByFirstNameIgnoreCase(String firstName);
// 不区分大小写匹配firstName

注意事项

  • 确保Customer实体类中存在private String firstName;,并且有对应的getter和setter方法,JPA需要通过这些方法访问属性来生成查询语句。
  • 方法名里的FirstName必须和实体属性名的驼峰形式完全对应,大小写不能出错。

内容的提问来源于stack exchange,提问作者Hemraj Malhi

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 10:34:52