springboot整合jasypt的详细过程
作者:果壳~
这篇文章主要介绍了springboot整合jasypt的详细过程,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
jasypt
保证项目中的账号密码不以明文的形式展示
springboot集成jasypt
1.引入maven依赖
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.4</version>
</dependency>2.启动类添加注解
import com.ulisesbocchio.jasyptspringboot.annotation.EnableEncryptableProperties;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@EnableEncryptableProperties
public class IpSourceApplication {
public static void main(String[] args) {
SpringApplication.run(IpSourceApplication.class, args);
}
}3.yaml配置
jasypt:
encryptor:
password: 02700083-9fd9-4b82-a4b4-9177e0560e92
algorithm: PBEWithMD5AndDES
iv-generator-classname: org.jasypt.iv.NoIvGenerator
my:
username: ENC(atRC+VNwB17CQVilGftfQg==)
password: ENC(Or0FKbtskiXsJlFtI23FxA==)4.加解密测试类
import org.jasypt.util.text.BasicTextEncryptor;
public class Test01 {
public static void main(String[] args) {
//该类的选择根据algorithm:PBEWithMD5AndDE选择的算法选择
BasicTextEncryptor encryptor = new BasicTextEncryptor();
encryptor.setPassword("02700083-9fd9-4b82-a4b4-9177e0560e92");
String encrypt = encryptor.encrypt("root");
System.out.println(encrypt);
String decrypt = encryptor.decrypt(encrypt);
System.out.println(decrypt);
encrypt = encryptor.encrypt("mysql");
System.out.println(encrypt);
decrypt = encryptor.decrypt(encrypt);
System.out.println(decrypt);
}
}读取配置效果
@RestController
public class IpController implements InitializingBean {
@Value("${my.username}")
private String username;
@Value("${my.password}")
private String password;
@Override
public void afterPropertiesSet() throws Exception {
System.out.println("username:"+username+",password:"+password);
}
}到此这篇关于springboot整合jasypt的文章就介绍到这了,更多相关springboot整合jasypt内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
