Boo*_*zie 6 sqlite inheritance android ormlite
我正在尝试将继承与ORMLite一起使用,如果支持与否,我无法查看文档和谷歌搜索.
我想做的是
public abstract class Person{
public int id;
public String name;
}
public class Student extends Person{
public String school;
public String year;
// other student stuff
}
public class Teacher extends Person{
public String title;
// other teacher stuff
}
Run Code Online (Sandbox Code Playgroud)
我无法解决的问题(假设它得到支持)是如何为ORMLite注释3个类.
我是否只需要用具体类注释@DatabaseTable(tableName = "Student")
或者我是否也需要抽象类?
我一直收到如下错误:
04-24 10:18:30.857:E/AndroidRuntime(30495):引起:java.lang.RuntimeException:java.sql.SQLException:来自Android sqlite游标的未知字段'name',而不是:[year,school]
的@DatabaseTable
注释是仅在必要Student
或Teacher
表格和,如果它是在将不使用Person
基类.
你需要拥有的是@DatabaseField
关于id
和name
字段的注释Person
.例如:
public abstract class Person{
@DatabaseField(generatedId = true)
public int id;
@DatabaseField
public String name;
}
Run Code Online (Sandbox Code Playgroud)
ORMLite应该遍历类层次结构,并且基类中的任何字段都应该包含在Student
和Teacher
表中.如果您编辑问题以显示@DatabaseField
或其他注释,我可以进行更多评论.
归档时间: |
|
查看次数: |
3553 次 |
最近记录: |