赞
踩
保证项目中的账号密码不以明文的形式展示
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>3.0.4</version>
</dependency>
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);
}
}
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==)
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);
}
}
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。