Spring Boot Mybatis 优雅解决敏感信息加解密问题
前言:在一些特定的应用场景下,需要对用户的敏感信息做加密处理,同样的在读取用户信息的时候又需要解密处理。 1. 常见解决方案 针对这种应用场景,通常我们的做法是:在数据入库之前,对敏感数据进行加密。执行查询 sql 返回结果后,再对结果进行解密。 我们很容易想到如下代码: @Override public int saveOne(VipCard vipCard) { vipCard.setName(encrypt(vipCard.getName())); vipCard.setCardNo(encrypt(vipCard.getCardNo())); vipCard.setIdNumber(encrypt(vipCard.getIdNumber())); vipCard.setPhoneNumber(encrypt(vipCard.getPhoneNumber())); return vipCardMapper.saveOne(vipCard); } @Override public VipCard findById(Integer id) { VipCard vipCard = v....