我想向现有实体添加新属性,而不在数据库中创建新列。
假设我们定义了一个包含2-3列id, name, score
的实体。
现在,当我们使用findAll
等方法进行查询时,我需要获取附加值average
。因此,无论何时查询特定实体,我们都希望有4个字段。
我们可以使用getter / setter或其他任何解决方案来实现这一目标吗?
答案 0 :(得分:0)
当然,您可以简单地在实体类上创建一个额外的getter来动态计算平均值:
select * from tableName where colA is not null and colA <> '' and colA rlike '.*(P[0-9]{4}).*'
如果平均值的计算成本很高,则可以将结果缓存在私有属性中,并在随后的调用getter时将其返回。