使用hibernate在数据库中使用Unicode字符

使用hibernate在数据库中使用Unicode字符,hibernate,Hibernate,我可以防止使用hibernate在数据库中持久化某些字符吗。例如,如果我有一个类Note,它将Note id和Note text作为两个属性。我可以防止像FFFE这样的Unicode字符在数据库中持久化吗。当用户输入FFFE之类的字符时,应将其替换为AAAA最简单的解决方案是将文本属性配置为。然后在文本属性的getter中,将FFFE替换为AAAA: 由于文本属性是由属性访问的,hibernate将从其getter获取要在DB中持久化的值 @Entity public class Note {

我可以防止使用hibernate在数据库中持久化某些字符吗。例如,如果我有一个类Note,它将Note id和Note text作为两个属性。我可以防止像FFFE这样的Unicode字符在数据库中持久化吗。当用户输入FFFE之类的字符时,应将其替换为AAAA

最简单的解决方案是将文本属性配置为。然后在文本属性的getter中,将FFFE替换为AAAA:

由于文本属性是由属性访问的,hibernate将从其getter获取要在DB中持久化的值

@Entity
public class Note {

   private Integer id;
   private String text;

   @Id
   public Integer getId(){ }

   public void getText(){
       /**replace() is the function to replace `FFFE` with  `AAAA` ***/
       this.text = replace(inText);
       return  this.text;
   }
}