場(chǎng)景
- 使用ReflectionToStringBuilder完成toString
- 例如密碼的字段不參與toString
代碼示例
package com.frank.string;
import java.lang.reflect.Field;
import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;
public class ExcludeField {
private String userId;
private String userName;
private String passWord;
public String getUserId() {
return userId;
}
public void setUserId(String userId) {
this.userId = userId;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPassWord() {
return passWord;
}
public void setPassWord(String passWord) {
this.passWord = passWord;
}
public String toString()
{
//MULTI_LINE_STYLE 每一行一個(gè)字段
//SHORT_PREFIX_STYLE 不換行孵户,用逗號(hào)分隔
ReflectionToStringBuilder builder = new ReflectionToStringBuilder(
this, ToStringStyle.SHORT_PREFIX_STYLE) {
@Override
protected boolean accept(Field field) {
return !field.getName().equals("passWord");
}
};
return builder.toString();
}
public static void main(String[] args)
{
ExcludeField excludeField = new ExcludeField();
excludeField.setUserId("00277499");
excludeField.setUserName("Frank");
excludeField.setPassWord("芝麻開(kāi)門(mén)捏检!");
System.out.println(excludeField);
}
}
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者