1 Star 0 Fork 7

嗼小鱼 / SpringCloud-multiple-gradle

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
CustomTypeHandler.java 1.70 KB
一键复制 编辑 原始数据 按行查看 历史
尖斌卡 提交于 2022-02-20 11:47 . 字段加解密
package hxy.dream.dao.configuration.mybatis;
/**
* @ClassName AESTypeHandler
* @date 2020/4/9 14:27.
* @Description
*/
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import hxy.dream.dao.util.KeyCenterUtils;
import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;
import org.springframework.stereotype.Service;
import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
/**
* 数据库字段加解密处理
*
* @param <T>
*/
@Service
public class CustomTypeHandler<T> extends BaseTypeHandler<T> {
public CustomTypeHandler() {
}
@Override
public void setNonNullParameter(PreparedStatement ps, int i, Object parameter, JdbcType jdbcType) throws SQLException {
ps.setString(i, KeyCenterUtils.encrypt((String) parameter));
}
@Override
public T getNullableResult(ResultSet rs, String columnName) throws SQLException {
String columnValue = rs.getString(columnName);
//有一些可能是空字符
return StringUtils.isBlank(columnValue) ? (T) columnValue : (T) KeyCenterUtils.decrypt(columnValue);
}
@Override
public T getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
String columnValue = rs.getString(columnIndex);
return StringUtils.isBlank(columnValue) ? (T) columnValue : (T) KeyCenterUtils.decrypt(columnValue);
}
@Override
public T getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
String columnValue = cs.getString(columnIndex);
return StringUtils.isBlank(columnValue) ? (T) columnValue : (T) KeyCenterUtils.decrypt(columnValue);
}
}
Java
1
https://gitee.com/moxiaoyu1125/SpringCloud-multiple-gradle.git
git@gitee.com:moxiaoyu1125/SpringCloud-multiple-gradle.git
moxiaoyu1125
SpringCloud-multiple-gradle
SpringCloud-multiple-gradle
springboot3.0

搜索帮助