如何使用注释创建转换器?
How create a converter with Annotation?
我想创建一个从布尔值到字符串的转换器的注释。例如
public User {
@Id
@Column(name="user_name")
private String name;
@Column(name="active")
//This the CustomAnnotation
@ConvertMyBooleanToString
private boolean isActive;
}
我的自定义注释
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ConvertMyBooleanToString {
//empty
}
某处实施
...
return valueFieldThatHasAnnotation ? "Yes" : "No";
...
所以,我不知道如何实现这个注释,以便每次在保存到数据库之前,它都会转换为字符串。
谢谢大家!
你是如何持久化到数据库的?如果你使用的是hibernate,有一个内置的"yes_no" type
yes_no: A type that maps an SQL CHAR(1) to a Java Boolean.
所以像这样:
@Type(type="yes_no")
public boolean isActive;
我想创建一个从布尔值到字符串的转换器的注释。例如
public User {
@Id
@Column(name="user_name")
private String name;
@Column(name="active")
//This the CustomAnnotation
@ConvertMyBooleanToString
private boolean isActive;
}
我的自定义注释
@Target(ElementType.FIELD)
@Retention(RetentionPolicy.RUNTIME)
public @interface ConvertMyBooleanToString {
//empty
}
某处实施
...
return valueFieldThatHasAnnotation ? "Yes" : "No";
...
所以,我不知道如何实现这个注释,以便每次在保存到数据库之前,它都会转换为字符串。
谢谢大家!
你是如何持久化到数据库的?如果你使用的是hibernate,有一个内置的"yes_no" type
yes_no: A type that maps an SQL CHAR(1) to a Java Boolean.
所以像这样:
@Type(type="yes_no")
public boolean isActive;