【发布时间】:2018-01-11 02:37:19
【问题描述】:
有没有一种方法可以屏蔽密码等类的某些字符串变量,从而防止在记录期间发生?就像以这种方式覆盖 toString() 方法一样,它不会在日志中打印。
例如,我们有一个包含以下字段的 Employee 类:
public class Employee {
private String username;
**private String password; //mask this field**
private String city;
}
在记录期间
LOGGER.INFO("打印对象:"+employee);
在日志记录中,我正在尝试打印整个对象,这里是员工,我的要求是 根本不打印屏蔽字段、密码,而其余字段的日志记录是很好。
【问题讨论】:
-
只需将其从
toString中排除? -
覆盖
toString()方法并打印您需要的任何内容... -
散列密码。