man*_*uai 9 android ormlite android-contentprovider
我正在使用内容提供程序来管理我的应用程序数据,这些数据不与其他应用程序共享.但是,有一些样板代码,例如将光标转换为域对象.ORMLite提供了一种更优雅的方式,可以直接将数据库条目映射到域对象.所以我想用ORMlite替换内容提供者.但我有些担心:
我是否应该用ORMLite替换内容提供者?
min*_*haz 15
我不认为,您可以将ORM与Content Provider进行比较.ORMLite提供以下功能链接到用户,并在开发时具有完全独立的目标.
但除了你提到的东西之外,它们还有内容提供商的其他好处.
如果您想在多个应用程序或进程之间共享日期.可能现在你没有任何计划,但似乎你的应用程序在数据库上很重,如果你计划与第三方或你的另一个应用程序共享你的数据,你可以选择内容提供商.
内容提供商是Android的所有版本的标准,这也意味着您的应用程序是安全的.我很确定ORMLite也很稳定.但是你真的想冒这个风险,特别是如果不节省你的时间或你没有任何业务要求这样做.Android API已经碎片化了你想在此基础上再承担另一项工作量吗?
如果您想将数据上传到云,可以很容易地与SyncAdapter集成
使用Android安全和权限功能.
您对处理Content Provider所需的额外代码是正确的.
现在我正在开展一个项目,我们有大约20个桌子.我为每个表创建了一个DAO.其中基本上内部使用Content provider.
DAO-> Content Provider-> SQL Lite Open Helper
Class XyzDao{
private final Context mContext;
XyzDao(Context context){
this.mContext=context;
}
public String getMyData(){
//content provider code
return myData;
}
public void setMyData(String x, int y, double z){
//content provider code to set the data
}
}
Run Code Online (Sandbox Code Playgroud)
我本可以在没有内容提供商的情况下完成,现在当前的要求可以正常工作,但我仍然选择这条路线.你会问为什么?
而且,最好的部分来自任何Activity我只需使用我的DAO来访问数据库.
或者,您可以直接从DAO 访问SQLLiteOpenHelper.
在一天结束时,每个选择都取决于您的业务需求.如果你有很多持久性对象,ORMLite可能是个不错的选择.
| 归档时间: |
|
| 查看次数: |
5906 次 |
| 最近记录: |