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漏洞补丁"为名诱使用户下载安装,病毒安装后,会未经用户同意,暗中启动任务管理应用,建立任务,影响用户对手机的正常使用,并可能触发窃取隐私的行 ...
一周排行
  •  一般有LINUX是虚拟主机,很难提权,难反弹. MSF和PHP的那个漏洞除外. 所以日不了...如果有管理平台 DirectAdmin那么你就能成功 默认登陆地址 http://ip:2222/  在LINUX下 ...
  • 最近在学Android,想做个google-map-api的小应用,哪知道费死劲了-- 首先是关于<uses-library />的引用位置,书中没有提及,结果程序一运行就出现has stopped un ...
  • 数据库结构: Create TABLE `admin_menu` ( `menu_id` int(4) NOT NULL auto_increment, `menu_name` varchar(50) default ...
  • 易网科技讯 6月6日消息,据路透社报道,三星集团董事长李健熙目前身体状况不佳,其继承人面临着有史以来最大金额的遗产税账单,但他们除了支付外似乎没有其它选择.按韩国遗产税50%的最高税率计算,李健熙现年45岁的独子.三 ...
  • MySQL语句温习   SHOW DATABASES; //显示所有数据库 SELECT DATABASE(); //查看当前数据库 SHOW TABLES; //显示表名 USER db_name[;] //切换数 ...
  • 上面是MySQL中数据类型  
  • 现在我们对事务的概念和原理都有所了解了,并且作为已经有一些基础的C#开发者,我们已经熟知编写数据库交互程序的一些要点,即: (1)使用SqlConnection类的对象的Open()方法建立与数据库服务器的连接. ( ...
  • 1 /* 2 The first line of each test case contains 1 <= S <= 100, the number of satellite channels! 3 注意 ...
  • 原先地图瓦片服务器采用的是arcgisserver发布的地图服务并进行切片,但ags发布的地图服务很占内存,发布太多的话服务器压力很大.再一个就是ags价太高了. 学习Nodejs之后,发现这是一个可以开发高并发服务 ...
  • using System; using System.Collections.Generic; using System.Linq; using System.Windows.Forms; using System. ...