JAVA加密工具类实例

工具类还是老套路,要让用户可扩展,同时提供一个基础工具即可,本文分享BeginCode的用户密码加密工具类的使用,

如果不为了扩展性,可以写成工具类即可,提供两个静态方法如下

一个方法是直接MD5加密,一个方法是通过盐值,提高密码安全性的加密方式

java初学者有什么不懂的可以问我,一起来学习!——我刚整理了一套2018最新的0基础入门教程和进阶教程,无私分享,加裙四九二一七三四八二, 即可获取,内附:开发工具和安装包,以及系统学习路线图

JAVA加密工具类实例_第1张图片

加密工具类

使用的方式如下

直接通过类方法直接调用即可: 比如我们登录密码验证的代码如下

JAVA加密工具类实例_第2张图片

加密工具类使用

这种方式的工具类,也可以通过继承的方式扩展新的加密方法,但如果想换加密方式只能换个类,把所有用到该类的地方都替换掉,也就是面向类的编程了。

另一种方式,也是前几个工具类中提到的面向接口编程的方式

定义接口

JAVA加密工具类实例_第3张图片

定义加密接口,一个是MD5加密,一个是有盐值的加密

提供一个默认实现类

JAVA加密工具类实例_第4张图片

加密方法默认实现类

有盐值的加密 将加密字符串和盐值链接,共同完成MD5加密,提高密码的安全性,只要保护好自己的盐值不被泄露就好。

spring集成使用

Spring直接配置bean即可

代码使用

JAVA加密工具类实例_第5张图片

java初学者有什么不懂的可以问我,一起来学习!——我刚整理了一套2018最新的0基础入门教程和进阶教程,无私分享,加裙四九二一七三四八二, 即可获取,内附:开发工具和安装包,以及系统学习路线图

注入encoder,直接调用对应方法即可

使用说完,说一下扩展吧,

比如我的盐值加密的方法,是将盐值放在密码的后面,共同加密。

突然有一天我又想做的特殊一点,比如我将盐值一分为二,做成 盐值+密码+盐值的方式再共同加密,

那就再写个实现类,做出这个实现即可,然后修改下spring配置的bean,其他代码不用改,直接就替换成新的加密方式。

你可能感兴趣的:(java)