mybaits typehandler示例
时间: 2023-05-24 11:01:05 浏览: 62
以下是 MyBatis TypeHandler 的示例代码:
```java
import java.sql.*;
import org.apache.ibatis.type.*;
@MappedTypes(String.class)
public class ExampleTypeHandler extends BaseTypeHandler<String> {
@Override
public void setNonNullParameter(PreparedStatement ps, int i, String parameter, JdbcType jdbcType) throws SQLException {
ps.setString(i, encryptString(parameter));
}
@Override
public String getNullableResult(ResultSet rs, String columnName) throws SQLException {
return decryptString(rs.getString(columnName));
}
@Override
public String getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
return decryptString(rs.getString(columnIndex));
}
@Override
public String getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
return decryptString(cs.getString(columnIndex));
}
private String encryptString(String plainText) {
// 这里是加密的代码
return plainText;
}
private String decryptString(String encryptedString) {
// 这里是解密的代码
return encryptedString;
}
}
```
这个 TypeHandler 会将插入数据库的字符串进行加密操作,查询时再解密操作。需要注意的是,这个示例仅供参考,加密的实现需要遵循相关的安全标准。