我对Android应用程序中ORMlite的用法很感兴趣。但是有一个问题。
第一步是为您的课程添加注释,但我需要这样的内容:
@DatabaseField(columnName = "geometry", useGetSet = true)
String JSONgeometry;
@Formula (nativeSQL = "ShapeFromJSONText(JSONgeometry)")
public void set(String JSONgeometry){
this.JSONgeometry = JSONgeometry;
}
@Formula (nativeSQL = "asJSONtext(geometry)")
public String get(){
return JSONgeometry;
}
有什么方法可以在注释中插入本机SQl函数吗?有什么方法可以使用BasePersister解决此任务?
最佳答案
您能否更具体地说明ShapeFromJSONText
和asJSONtext
的功能是什么?
通过您的方法,我觉得您想将对象保存在几何字段中。
在模型中创建单独的类:
class Geometry {
@DatabaseField(generatedId = true)
int id;
@DatabaseField
float field1;
@DatabaseField
float field2;
}
在您的上等班级中,像这样引用它:
class Shape {
@DatabaseField(foreign = true)
Geometry geometry;
}
当然,如果您不想保存对象,而只想保存其JSON表示形式,则可以将其保存到
String
字段。如果您想使用SQL函数以某种方式更改已保存的对象,则也可以在Java中使用getter和setter进行更改。