没有@DatabaseField的属性?

时间:2016-11-28 11:17:29

标签: java annotations ormlite

我是否理解,如果数据模型中的属性未使用@DatabaseField注释,它将不会持久保存到数据库?

@DatabaseField(columnName = "teacher_name")
public String teacherName;

1 个答案:

答案 0 :(得分:0)

  

数据模型中的属性未使用@DatabaseField注释,它不会持久保存到DB?

ORMLite需要知道您希望将实体中的哪些字段保留到数据库中。它可以通过几种不同的方式实现。 “标准”方法是使用@DatabaseField注释。请参阅setting up your classes

@DatabaseField(columnName = "teacher_name")
public String teacherName;

您也可以使用Javax @Column annotations

@Column(name = "teacher_name")
public String teacherName;

您可以通过java代码(或弹簧布线)配置类的第三种方式。请参阅class configuration documentation

List<DatabaseFieldConfig> fieldConfigs = new ArrayList<>();
DatabaseFieldConfig field1 = new DatabaseFieldConfig("teacherName");
field1.setColumnName("teacher_name");
fieldConfigs.add(field1);
// add others if necessary ...
DatabaseTableConfig<Entity> tableConfig
    = new DatabaseTableConfig<Entity>(Entity.class, fieldConfigs);