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

 更新时间:2019年01月30日 11:16:40   作者:裴星宙  
今天小编就为大家分享一篇关于在SpringBoot中通过jasypt进行加密解密的方法,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

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

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对脚本之家的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

  • spring boot配置ssl(多cer格式)超详细教程

    spring boot配置ssl(多cer格式)超详细教程

    这篇文章主要介绍了spring boot配置ssl(多cer格式)超详细教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • java关闭流连接IO工具类

    java关闭流连接IO工具类

    这篇文章主要为大家详细介绍了java关闭流连接IO工具类,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • Java中错误与异常(Throwable)示例详解

    Java中错误与异常(Throwable)示例详解

    在Java中所有的异常都有一个共同的祖先java.lang包中的 Throwable类,这篇文章主要介绍了Java中错误与异常(Throwable)的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2025-09-09
  • java对ArrayList排序代码示例

    java对ArrayList排序代码示例

    本文通过代码示例给大家介绍java对arraylist排序,代码简洁易懂,感兴趣的朋友一起学习吧
    2015-11-11
  • SpringCloud Ribbon负载均衡代码实例

    SpringCloud Ribbon负载均衡代码实例

    这篇文章主要介绍了SpringCloud Ribbon负载均衡代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • 详解Spring如何使用@Scheduled注解执行定时任务

    详解Spring如何使用@Scheduled注解执行定时任务

    在现代的Java应用程序中,定时任务是一种常见的需求,Spring框架提供了多种方式来管理定时任务,其中​​@Scheduled​​注解因其简洁和易用性而受到开发者的青睐,下面我们就来看看具体实现方法吧
    2025-08-08
  • Spring关闭Tomcat Servlet容器时内存泄漏问题解决方案

    Spring关闭Tomcat Servlet容器时内存泄漏问题解决方案

    这篇文章主要介绍了Spring关闭Tomcat Servlet容器时内存泄漏问题解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • 浅谈java中Map的用法

    浅谈java中Map的用法

    Map简介:将键映射到值的对象。一个映射不能包含重复的键;每个键最多只能映射到一个值。此接口取代 Dictionary 类,后者完全是一个抽象类,而不是一个接口。
    2015-09-09
  • Java中队列Queue和Deque的区别与代码实例

    Java中队列Queue和Deque的区别与代码实例

    学过数据结构的,一定对队列不陌生,java也实现了队列,下面这篇文章主要给大家介绍了关于Java中队列Queue和Deque区别的相关资料,需要的朋友可以参考下
    2021-08-08
  • Java 包装类型及易错陷阱详解

    Java 包装类型及易错陷阱详解

    这篇文章主要介绍了Java 包装类型及易错陷阱详解,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-08-08

最新评论