![](/img/trans.png)
[英]Spring Data JPA - Custom Query with multiple aggregate functions in result
[英]Custom Result from Spring JPA Query
我有一个用户 class 并且我想从数据库中提取该 class 的所有对象。 我正在使用 Spring 数据 JPA 并使用@Query
获取数据。 有没有办法可以隐藏用户电话号码的部分数字。 比如将 123-456-7890 转换为 123-XXX-XXXX。
@Query(value = "SELECT u FROM User u ORDER BY u.name")
List<User> getAllUsers();
我在代码中的多个位置使用用户 object,因此每次获取和更新记录将非常耗时,并且用户会随着时间的推移而增长,因此也会影响性能。
有什么方法(一些后处理器或任何东西)可以处理它,同时在从数据库中获取数据后将数据填充到 object 中。
任何指针都会非常有帮助。
谢谢。
您可以在使用属性转换器获取时转换您的数据。
public class PhoneNumberAttributeConverter implements AttributeConverter<String, String> {
@Override
public String convertToDatabaseColumn(String value) {
return value;
}
@Override
public String convertToEntityAttribute(String a) {
String value = a.substring(0, 3) + s.substring(3).replaceAll("[0-9]", "X");
return value;
}
}
并在现场使用
@Convert(converter = PhoneNumberAttributeConverter.class)
private String phoneNumber;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.