【问题标题】:How to properly set getter setter in interface projection for a boolean variable starting with is?如何在接口投影中为以 is 开头的布尔变量正确设置 getter setter?
【发布时间】:2020-07-30 19:32:41
【问题描述】:

我正在使用 interface projection 。出于单元测试的目的,我必须同时添加 getter 和 setter。在 Jpa 查询中,我有一个名为 isPublic 的布尔参数。但是吸气剂设置器不起作用。我试过了

  Boolean isPublic();

  void setPublic(Boolean isPublic);

还有这个

  Boolean getIsPublic();

  void setIsPublic(Boolean isPublic);

还有这个

  Boolean getPublic();

  void setPublic(Boolean isPublic);

但是,当我使用 setter setPublic 和 getter getPublic 将变量名称更改为 public 时,一切正常。如何正确设置 isPublic 的 getter setter?

【问题讨论】:

  • 您是否尝试过通过 IDE 生成 getter setter 方法(是的,不是在接口中,而是在某些类中)?那应该会生成正确的。
  • 您尝试过使用 Lombok 吗?
  • @SKumar 他们在课堂上使用isPublic()setPublic(boolean aPublic),在界面投影中不起作用
  • @mahfujasif 您的参数是 boolean 还是 Boolean 类型?如果您从 IDE 获得 isPublic(),我怀疑您有布尔类型的参数。 isXXX 只是布尔类型。对于其余的对象,它必须是 getter/setter。另一个问题,你能发布你的junit测试代码吗?
  • @mahfujasif 如果它是布尔类型,你是否尝试过使用 boolean isPublic() 和 setPublic(boolean aPublic) ?

标签: spring-boot spring-data-jpa projection


【解决方案1】:

如果你的变量名是“isPublic”,那么你的getter应该命名为isIsPublic。

“is”不应出现在变量名中。

【讨论】:

  • 不是类,接口
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-30
  • 2022-01-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多