跟大家分享一下
用ShardingSphere实现数据脱敏
根据官网上的数据脱敏功能,添加依赖,我用的是4.1.0版本:
<dependency>
<groupId>org.apache.shardingsphere</groupId>
<artifactId>sharding-jdbc-core</artifactId>
<version>4.1.0</version>
</dependency>
然后用Java配置:
其中有一句代码是这样的:
DataSource getEncryptDataSource() throws SQLException {
return EncryptDataSourceFactory.createDataSource(DataSourceUtil.createDataSource("demo_ds"), getEncryptRuleConfiguration(), new Properties());
}
DataSourceUtil.createDataSource(“demo_ds”) 这里会报红~~~
因为这个DataSourceUtil类是要自己写的~~~
这个类如果没有写,这里就配置不了!!!!!
坑!!!!!!!!!
找了好久,才在网上找到这个类的代码,感谢那位分享的大佬!!!1
我贴一下这个类,免得大家踩坑
创建数据源的工具类:
package com.irisian.sharedjdbc.masterandslave;
import javax.sql.DataSource;
import com.alibaba.druid.pool.DruidDataSource;
public class DataSourceUtil {
private static final String URL_PREFIX = "jdbc:mysql://localhost:3306/";
private static final String USER_NAME = "root";
private static final String PASSWORD = "123456";
public static DataSource createDataSource(final String dataSourceName) {
DruidDataSource result = new DruidDataSource();
result.setDriverClassName(com.mysql.jdbc.Driver.class.getName());
result.setUrl(URL_PREFIX + dataSourceName);
result.setUsername(USER_NAME);
result.setPassword(PASSWORD);
return result;
}
}
这样写了这个类,就可以用官网的代码进行Java配置了!
参考:
shareding-jdbc实现读写分离最简单的容易理解示例