在SpringBoot中通过jasypt进行加密解密的方法

作者:裴星宙 时间:2023-11-15 21:29:23 

1.用途

在SpringBoot中,通过jasypt可以进行加密解密. 这个是双向的, 且可以配置密钥.

2.使用:

2.1通过UT创建工具类,并认识jasypt


import org.jasypt.util.text.BasicTextEncryptor;
import org.junit.Test;
public class UtilTests {
 @Test
 public void jasyptTest() {
   BasicTextEncryptor encryptor = new BasicTextEncryptor();
   // application.properties, jasypt.encryptor.password
   encryptor.setPassword("abc");
   // encrypt root
   System.out.println(encryptor.encrypt("root"));
   System.out.println(encryptor.encrypt("root"));
   System.out.println(encryptor.encrypt("root"));
   // decrypt, the result is root
   System.out.println(encryptor.decrypt("UP/yojB7ie3apnh3mLTU7w=="));
   System.out.println(encryptor.decrypt("ik9FE3GiYLiHwchiyHg9QQ=="));
   System.out.println(encryptor.decrypt("9Obo/jq9EqmTE0QZaJFYrw=="));
 }
}

可以看出, 每次生成的密码是不一样的, 但是通过密钥,可以解密成一样的明文.

2.2在SpringBoot中配置jasypt

2.2.1配置密钥

jasypt.encryptor.password:abc

2.2.2使用

spring.datasource.url: jdbc:mysql://127.0.0.1:3306/tmp?useSSL=false&useUnicode=true&characterEncoding=utf-8

spring.datasource.username: ENC(ik9FE3GiYLiHwchiyHg9QQ==)

spring.datasource.password: ENC(ik9FE3GiYLiHwchiyHg9QQ==)

spring.datasource.driver-class-name: com.mysql.jdbc.Driver

2.2.3启动时配置密钥

java -jar -Djasypt.encryptor.password=abc xxx.jar

来源:https://blog.csdn.net/sanpic/article/details/82869058

标签:springboot,jasypt,加密,解密
0
投稿

猜你喜欢

  • Spring Cloud Zuul集成Swagger实现过程解析

    2021-05-26 12:36:09
  • 深入理解Java基础之try-with-resource语法糖

    2022-12-03 08:17:43
  • Android个人手机通讯录开发详解

    2023-01-22 01:21:30
  • Java Stream流的常见生成和操作方法总结

    2023-08-26 12:06:21
  • Android Flutter实现仿闲鱼动画效果

    2023-07-15 15:32:47
  • Android实现加载对话框

    2023-10-24 14:48:36
  • Android Handler主线程和一般线程通信的应用分析

    2022-10-29 14:08:13
  • Android中实现EditText密码显示隐藏的方法

    2022-04-13 22:33:56
  • WCF实现的计算器功能实例

    2022-05-07 23:17:12
  • 详解Java中的线程池

    2023-11-10 16:33:27
  • Flutter WebView 预加载实现方法(Http Server)

    2023-06-25 23:14:35
  • C#实现简单的计算器功能

    2021-05-31 01:52:46
  • C++之try catch 异常处理入门实例

    2021-09-13 04:42:07
  • 浅析Spring Boot单体应用熔断技术的使用

    2022-05-10 02:37:08
  • SpringBoot基于Swagger2构建API文档过程解析

    2022-12-06 20:42:58
  • 深入理解Java设计模式之桥接模式

    2022-04-11 07:34:53
  • springboot cloud使用eureka整合分布式事务组件Seata 的方法

    2023-08-19 13:49:44
  • android JSON解析数据 android解析天气预报

    2022-01-16 03:33:53
  • maven install报错中程序包xxx不存在的问题解决

    2023-03-05 03:06:51
  • Java超详细讲解抽象类的原理与用法

    2022-10-31 20:51:42
  • asp之家 软件编程 m.aspxhome.com