1、依赖

        <!-- 数据库加密配置-->        <dependency>            <groupId>com.github.ulisesbocchio</groupId>            <artifactId>jasypt-spring-boot-starter</artifactId>            <version>2.1.0</version>        </dependency>

2、生成加密账号密码

public class Encryption {    public static void main(String[] args) {        String username = "root";        String password = "root";        System.out.println("待加密名称:" + username);        System.out.println("待加密明码:" + password);        StandardPBEStringEncryptor encryptor = new StandardPBEStringEncryptor();        encryptor.setAlgorithm("PBEWithMD5AndDES");//这是加密形式,采纳MD5和DES的对称加密        encryptor.setPassword("root");//这是加盐,salt。减少密文不被撞破的概率        String enc_name = encryptor.encrypt(username);        String enc_pwd = encryptor.encrypt(password);        System.out.println("加密后名称:" + enc_name);        System.out.println("加密后明码:" + enc_pwd);        String redisPwd = "Password123@mysql";        String enc_redis = encryptor.encrypt(redisPwd);        System.out.println("redis Pwd解密后:" + enc_redis);        String dec_name = encryptor.decrypt(enc_name);        String dec_pwd = encryptor.decrypt(enc_pwd);        System.out.println("解密后名称:" + dec_name);        System.out.println("解密后明码:" + dec_pwd);    }}

3、配置文件加密

server-username=ENC(NMUJ7h1cqq9J7g4Hkn0yag==)server-password=ENC(Er7T1RxNCsAgbXBejhLrrw==)# 能够加在配置文件解密(然而有危险,能够通过jar启动退出配置)jasypt.encryptor.password=root

4、jar命令退出

nohup java -jar -Djasypt.encryptor.password=root  ${APP_NAME} > ${APP_LOG} 2>&1 &

5、shell命令启动

#替换这里jar包的门路,其它代码无需更改APP_NAME=/data/app/xxx.jarAPP_LOG=/data/app/xxx.log#应用阐明,用来提醒输出参数usage() {    echo "Usage: sh xxx.sh [start|stop|restart|status]"    exit 1} #检查程序是否在运行is_exist(){  pid=`ps -ef|grep $APP_NAME|grep -v grep|awk '{print $2}'`  #如果不存在返回1,存在返回0       if [ -z "${pid}" ]; then   return 1  else    return 0  fi} #启动办法start(){  is_exist  if [ $? -eq 0 ]; then    echo "${APP_NAME} is already running. pid=${pid}"  else    nohup java -jar -Djasypt.encryptor.password=root  ${APP_NAME} > ${APP_LOG} 2>&1 &  fi} #进行办法stop(){  is_exist  if [ $? -eq "0" ]; then    kill -9 $pid  else    echo "${APP_NAME} is not running"  fi  } #输入运行状态status(){  is_exist  if [ $? -eq "0" ]; then    echo "${APP_NAME} is running. Pid is ${pid}"  else    echo "${APP_NAME} is NOT running."  fi} #重启restart(){  stop  sleep 5  start} #依据输出参数,抉择执行对应办法,不输出则执行应用阐明case "$1" in  "start")    start    ;;  "stop")    stop    ;;  "status")    status    ;;  "restart")    restart    ;;  *)    usage    ;;esac