在有些业务场景,需要使用sqlite数据库,但sqlite数据库生的db文件,是明文的,该文件被别人拿到,就可以看到里面的所有数据,非常不安全,市面上有很多对sqlite数据库文件加密的方式,但都没有sqlcipher方便简洁,而且现在sqlcipher已发展到第4代,安全性极高,所以今天就使用springboot来集成sqlcipher4,做一个简单的例子
1、加入maven依赖,我们使用的是sqlit的jdbc方式
2、配置连接sqlit方式
3、先来看看数据库文件mydb.db3
在resources/db下有mydb.db3文件,此次就是sqlite使用sqlcipher4加密后的文件,我们使用DB Browser (SQLCipher)工具打开(此工具会放在后面的下载链接,下载安装即可),输入密码为111111,就可以查看mydb.db3里面的内容
4、java代码查询数据
//controller类
@RestController
@RequestMapping("/sysCompany")
@Api(tags = "AdminSysCompanyController", description = "公司管理")
public class SysCompanyController {
private static final Logger logger = LoggerFactory.getLogger(SysCompanyController.class);
@Autowired
private SysCompanyService sysCompanyService;
@GetMapping("/findByCompanyId")
@ApiOperation("查询公司")
public SysCompany findByCompanyId(@RequestParam String companyId) {
SysCompany sysCompany = sysCompanyService.find(companyId);
return sysCompany;
}
}
//service类
@Service
public class SysCompanyService {
@Autowired
private CommonDao commonDao;
public SysCompany find(String companyId){
SysCompany sysCompany =(SysCompany) commonDao.findTById(SysCompany.class,companyId);
return sysCompany;
}
}
5、页面访问,先启动服务,运行ServerApplication,访问页面:http://127.0.0.1:9080/ck/swagger-ui.html
6、数据库工具源代码下载:
链接:https://pan.baidu.com/s/136FAwjmU-o1dwYZEw2ZZZQ?pwd=gkf6
提取码:gkf6