AndroidAnnnotations注入框架使用之第三方框架集成OrmLite(十五)

 

(一).前言:

前面我们已经对于AndroidAnnotations框架集成Otto事件总线做了讲解,今天我们开始具体学习一下第三方框架集成Ormlite数据库持久化框架。主要为了我们更加方便对数据库操作使用。

 

OrmLite的官网:http://ormlite.com/sqlite_java_android_orm.shtml

(二).使用介绍:

自AndroidAnnotations2.7开始, [email protected] DAOs框架。

【注】最低支持的版本为ORMLite4.21

@OrmLiteDao有以下一个强制性的属性:

helper应该持有databasehelper的引用(该类需要继承自com.j256.ormlite.android.apptools.OrmLiteSqliteOpenHelper)

【注】不要获取和释放该helper,我们使用的OpenHelperManager,是不能在同一事件同时处理不同的helpers。所以如果当你在使用多个databasehelpers,需要小心使用OrmLite注解。使用实例如下:

 

@EActivity
public classMyActivity extends Activity {
 
    // UserDao is a Dao
    @OrmLiteDao(helper = DatabaseHelper.class)
    UserDao userDao;
 
    @OrmLiteDao(helper = DatabaseHelper.class)
    Dao carDao;
 
}

 

在AndroidAnnotations4.0之前,在AndroidAnnotations早期的版本中,@OrmLiteDao有model第二个强制的属性,就和和DAO相关model对象。

(三).DAO运行时异常:

自AndroidAnnotations3.0起,在3.0版本之前,[email protected][email protected]

自AndroidAnnotations3.3起,现在可以注解扩展自RuntimeExceptionsDao的子类,该类必须要有一个构造函数,传入和Dao模型。使用实例如下:

 

public classUserRuntimeExceptionDao extends RuntimeExceptionDao {
 
    public UserRuntimeExceptionDao(Dao dao) {
        super(dao);
    }
 
}
 
@EActivity
public classMyActivity extends Activity {
 
    @OrmLiteDao(helper = DatabaseHelper.class)
    UserRuntimeExceptionDao userDao;
 
}

 

到此位置关于AndroidAnnotations第三方框架集成之OrmLite集成已经全部讲解完成了。

 

更多相关文章
  • 在上一篇从struts2的action中看ActionContext的存储结构中已经看到ActionContext.getActionContext.getContextMap()得到的map的大体结构类型. 这篇将从源代码层面进行分析. 一.回顾 在上一篇中看到ActionContext中存放的是 ...
  •   随着高清摄像机的使用越来越多,如何选择合适的.满足监控整体网络架构性能的交换机也成了在高清监控系统前期方案制定.项目报价中有着很重要的作用.一个合适的交换机,不仅能够发挥监控网络应有的功能并能够有效减少资源的浪费. 监控网络有三层架构方式:核心层.汇聚层.接入层. 以选用720P的摄像机为例,分 ...
  • 亿邦动力网最新获悉,万达电商CEO董策已于近期离职.亿邦动力网就此向万达电商官方核实,对方称并未接到类似消息,且董本人今天仍照常上班.董策离职虽然稍显突然,但并非没有蛛丝马迹.此前,亿邦动力网等诸多媒体曾接收到来自万达电商方面的邀请,并定于6月4日下午在北京与万达电商众高管会面.但万达电商下午却告知 ...
  • 1.1 概念 高可用集群,英文原文为High Availability Cluster,简称HA Cluster,简单的说,集群(cluster)就是一组计算机,它们作为一个整体向用户提供一组网络资源.这些单个的计算机系统 就是集群的节点(node). 高可用集群的出现是为了使集群的整体服务尽可能可 ...
  • 写在前面 阅读目录: Visual Studio "14" CTP 关于 ASP.NET vNext ASP.NET vNext 实践 后记 ASP.NET vNext 发布已经过去了一个多月的时间,发布详情请访问:振奋人心呐!关于下一代.NET——ASP.NET vNext 的 ...
  • 28日,网秦全球手机安全中心再度截获了一个名为"Nokia补丁骗子(BD.ConsApp)"的病毒,该病毒以"Nokia漏洞补丁"为名诱使用户下载安装,病毒安装后,会未经用户同意,暗中启动任务管理应用,建立任务,影响用户对手机的正常使用,并可能触发窃取隐私的行 ...
一周排行
  • NFinal代码生成器与其他的代码生成器不太一样,只需要运行模块下的WebComplier.aspx即可生成最终的web层代码.包括数据库的操作,Router类, 调试文件等.附上一段代码与大家分享 using Sy ...
  • 1020. Tree Traversals (25) Suppose that all the keys in a binary tree are distinct positive integers. Given ...
  • 阅读提示:本文档以SUN Fire V880 Server(6*73GB Dsik)为例讲解在Solarsi8下使用命令行的方式安装及维护RAID1和RAID5. 以SUN Fire V880 Server(6*73 ...
  • 1 JS方式调用PHP文件并取得php中的值 举一个简单的例子来说明: 如在页面a.html中用下面这句调用: <script type="text/javascript" src=&quo ...
  • 自上周五iPhone 5在南京正式开售后,一时成为时尚人士的新宠.不管你用不用iPhone,很多人都听过一个段子:"乔布斯花几千万将苹果变薄0.5毫米,结果中国人一个套,没了:花二十几年把苹果屏幕变清晰,结 ...
  • 电脑语言栏不见了不能打字怎么办?有时候我们和好友聊天或进行其他输入操作时,会发现无法进行打字操作,这种现象具体体现为电脑的语言栏消失,这时候我们往往无措,我们会想如何才能把消失的语言栏显示出来,并解决打字问题 有时候 ...
  • 数据加密目前仍是计算机系统对信息进行保护的一种最可靠的办法.它利用密码技术对信息进行加密,实现信息隐蔽,从而起到保护信息的安全的作用. 数据中心安全体系 随着数据中心安全体系结构格局发生变化,数据中心安全体系结构上逐 ...
  • anyway, you can do this with auto layout. You can do it entirely in IB as of Xcode 5.1. Let's start with som ...
  • 在Dock里面有着许多我们常用的应用程序和文件,那么该怎么才能让里面的内容即以列表显示又能拥有网格显示的大图标效果,感兴趣的朋友可以看看下面的介绍 Dock是MAC用户的一个好帮手,在Dock里面有着许多我们常用的应 ...
  • from: https://www.ibm.com/developerworks/cn/linux/l-k26initrd/ 简介: Linux 的 initrd 技术是一个非常普遍使用的机制,linux2.6 内核 ...