让我们想象一下,我们有一个Person类,以及两种不同的情况:
1)我们需要从数据库中获取所有成年人用户
2)我们需要将人组分为两个-成人和否
因此,在第一种情况下,我宁愿使用where子句在存储库层中执行。
{{1}}
在第二种情况下,我有一种方法可以确定是成年人还是不成年人。
在这种情况下,如何避免sql和java代码中的逻辑重复?
答案 0 :(得分:1)
一种可能的解决方案:
isAdult
之类的属性添加到Person实体中,可以将其计算为属性(return age>18
),这是您的逻辑所在的单一位置isAdult
值存储在数据库中Select * from person where isAdult=1
if (person.isAdult()) ...