在SpringBoot中通过jasypt进行加密解密的方法
作者:裴星宙 发布时间:2023-11-15 21:29:23
标签: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
来源:https://blog.csdn.net/sanpic/article/details/82869058


猜你喜欢
- 多说无益,贴代码:/** * 校验银行卡卡号 * * @param cardId &nbs
- 之前的一篇博客中,讲的是用栈实现了中缀表达式的简易计算器,对于我们人来讲,中缀表达式是一种比较直观,而且非常好计算的一种形式,但对于计算器来
- 在淘宝、京东等电商举办活动的时候,经常可以看到在移动客户端推出的各种刮奖活动,而这种活动也受到了很多人的喜爱。从客户端的体验来说,这种效果应
- WPF 实现调用 ffmpeg 实现屏幕录制框架使用.NET4Visual Studio 2022需要去 ffmpeg[2]&nb
- 一、Bundle进行IPC介绍四大组件中的三大组件(Activity、Service、Receiver)都是支持在Intent中传递Bund
- 写本文章的目的是为了记录工作中遇到的问题,方便以后遇到可以迅速解决问题我使用的NPOI版本是2.2.1.0版本需要用到的命名空间using
- 思路:先获得当前季度的开始和结束日期,在当前日期的基础上往前推3个月即上个季度的开始和结束日期/** * @param fla
- Android 和 H5 都是移动开发应用的非常广泛。市面上很多App都是使用Android开发的,但使用Android来开发一些比较复杂附
- 完全属于自己的新闻展示平台,展示给大家,希望大家喜欢。一、新闻的数据库的构建脚本代码如下:(使用的mysql5.0 数据库)SET SQL_
- 基础部分内容差不多讲解完了,今天开始进入Java提高篇部分,这部分内容会比之前的内容复杂很多,希望大家做好心理准备,看不懂的部分可以多看两遍
- 本文实例为大家分享了C#汉字转换为拼音缩写的实现代码,供大家参考,具体内容如下using System;using System.Confi
- 作者:冰封一夏出处:http://www.cnblogs.com/bfyx/HZHControls官网:http://www.hzhcont
- 五子棋游戏(Java),供大家参考,具体内容如下思路:1.首先创建一个棋盘,建立一个二维数组,此文中为一个15*15的二维数组,2.初始化棋
- 本文实例为大家分享了Android实现类似微信视频接听的具体代码,供大家参考,具体内容如下1、背景需求:业务需要接入视频审核功能,在PC 端
- 问题场景今天小编在MyBatis 整合Spring 的时候,使用到了@MapperScan,在启动期出现了一个错误:Invalid defa
- 我们知道:int i = 5;long j = 7;i = i + j不能编译,但i += j却能编译运行,结果i = 12。这是因为:i
- public interface AttributeSet { /** * Retur
- 前言使用了flutter一段时间,越来越喜欢flutter了,flutter比我们想象中的强大。这篇文章介绍了怎么使用flutter来展示一
- 本文实例为大家分享了android实现选项卡功能,通过计算偏移量,设置tetxview和imageView的对应值,一些color的值读者自
- 前几天在看一个cameraCTSbug时,结果在一个java for循环上有点蒙。正好赶上这个点总结一下。java中的控制结构:条件结构这里