java代码脱敏地址的写法
时间: 2024-09-20 15:05:47 浏览: 91
在Java中,为了保护敏感信息如数据库连接字符串、API密钥等,我们通常会对它们进行脱敏处理,也就是隐藏或替换掉部分真实值。这可以通过以下几种常见的方法:
1. **String加密**:可以使用MD5、SHA-1等算法对敏感信息进行哈希加密,然后显示的是加密后的结果。
```java
public static String encrypt(String sensitive) {
return MD5Utils.md5Hex(sensitive);
}
```
2. **占位符替换**:使用特定字符(通常是“*”或“…”)替换一部分敏感信息,只保留实际变量名。
```java
String connectionString = "jdbc:mysql://<hidden>:<hidden>@localhost:3306/<hidden>?useSSL=false";
System.out.println("Connection URL: " + connectionString.replace("<hidden>", "[...]");
```
3. **环境变量**:将敏感数据存储在外部环境变量或配置文件中,在运行时通过`Properties`或`System.getenv()`读取。
```java
Properties props = new Properties();
props.load(new FileInputStream("config.properties"));
String apiKey = props.getProperty("API_KEY", "[REDACTED]");
```
4. **依赖注入**:如果在Spring框架中,可以使用`@Value`或`@Resource`注解注入一个`Environment`变量,然后使用属性名称作为占位符。
```java
@Configuration
public class AppConfig {
@Value("${my.api.key}")
private String apiKey;
// ...
}
```
阅读全文