ormlite的使用方法
ormlite是什么?
简单来说,就是我们定义一个实体类,利用这个框架,它可以帮我们吧这个实体映射到我们的数据库中,在Android中是SQLite,数据中的字段就是我们定义实体的成员变量。
官网地址为www.ormlite.com;我们需要在官网下两个依赖的jar包然后放在项目的libs目录中。
如何使用oralite
添加ormlite注解
这是我们新建的Message类,如图,当然还要设置get/set方法和一个无参构造函数
学过hibernate应该知道jpa,这里我们也可以使用标准的jpa来代替。
然后新建个类继承OrmLiteSqliteOpenHelper来生存数据库结构信息。
1 public class DatabaseHelper extends OrmLiteSqliteOpenHelper { 2 3 private static final String DB_NAME = "mydata.db"; // 数据库名称 4 private static final int version = 2; // 数据库版本 5 //定义每一张表的成员变量,其中一个功能:关闭helper,所有DAO对象清理 6 private Dao<Message, Integer> messageDao; 7 8 public Dao<Message, Integer> getMessageDao() { 9 if (messageDao==null){ 10 try { 11 messageDao = getDao(Message.class); 12 } catch (SQLException e) { 13 e.printStackTrace(); 14 } 15 } 16 return messageDao; 17 } 18 19 public DatabaseHelper(Context context) { 20 super(context, DB_NAME, null, version); 21 } 22 23 /* 24 * 1.此方法,不会自定执行,因为它不是回调函数 25 * 2.最好也不要自己调用,因为只应该执行1次 26 */ 27 @Override 28 public void onCreate(SQLiteDatabase arg0, ConnectionSource arg1) { 29 // TODO Auto-generated method stub 30 31 } 32 33 /* 34 * 此方法,不会自定执行,因为它不是回调函数 35 */ 36 @Override 37 public void onUpgrade(SQLiteDatabase arg0, ConnectionSource arg1, int arg2, 38 int arg3) { 39 // TODO Auto-generated method stub 40 41 } 42 43 @Override 44 public void close() { 45 super.close(); 46 if (messageDao!=null){ 47 messageDao = null; 48 } 49 } 50 51 }
然后再我们android项目的mainactivity调用;
1 public class MainActivity extends Activity { 2 3 private List<Message> messageList;//用于ORMLite 的演示 4 private DatabaseHelper db_helper; //其它activity或者service都无法获得 5 6 @Override 7 protected void onCreate(Bundle savedInstanceState) { 8 super.onCreate(savedInstanceState); 9 setContentView(R.layout.weixin); 10 11 } 12 13 14 //UI呈现在眼前 15 @Override 16 protected void onResume(){ 17 Log.i("ok", "onResume,界面出现了,app:"+app); 18 19 使用ORMLite 20 db_helper = new DatabaseHelper(this); 21 22 Dao<Message, Integer> message_dao = db_helper.getMessageDao(); 23 try { 24 messageList = message_dao.queryForAll(); //查询所有 25 //Log.i("ormlite", "记录条数:"+messageList3.size()); 26 String t = "记录条数:"+messageList3.size(); 27 Toast.makeText(this, t, Toast.LENGTH_LONG).show(); 28 29 } catch (SQLException e) { 30 String t = "记出错:"+e.getMessage(); 31 Toast.makeText(this, t, Toast.LENGTH_LONG).show(); 32 } 33 34 super.onResume(); 35 } 36 37 38 @Override 39 //UI完全消失在眼前,完全被另外一个进程覆盖 40 protected void onPause(){ 41 Log.i("ok", "onPause,被抛弃"); 42 db_helper.close();//??到底要不要? 43 super.onPause(); 44 } 45 46 47 48 }
这里附上ormlite的相关语句的使用方法:http://blog.csdn.net/industriously/article/details/50790624 (转载)
转载于:https://www.cnblogs.com/mark0812/p/6123302.html
ormlite的使用方法相关推荐
- 在 Oracle Enterprise Linux 和 iSCSI 上构建您自己的 Oracle RAC 11g 集群
作者:Jeffrey Hunter 了解如何以低于 2,700 美元的费用在 Oracle Enterprise Linux 上安装并配置 Oracle RAC 11g 第 2 版开发集群. 本指南中 ...
- Java面试题大全2021版
一.Java 基础 JDK 和 JRE 有什么区别? JDK:Java Development Kit 的简称,java 开发工具包,提供了 java 的开发环境和运行环境. JRE:Java Run ...
- ORMLite框架 的使用方法---给你的数据库操作插上翅膀
一:首先下载 ORMLite Jar 包 先去 ORMLite官网下载jar包 写博客时,目前最新的,对于Android为:ormlite-android-5.0.jar 和 ormlite-core ...
- android ormlite框架,ORMLite框架 的使用方法—给你的数据库操作插上翅膀
一:首先下载 ORMLite Jar 包 先去 ORMLite官网下载jar包 写博客时,目前最新的,对于Android为:ormlite-android-5.0.jar 和 ormlite-core ...
- ServiceStack OrmLite 数据库查询 几个实用方法 (继承表格式化集合等)
执行SQL语句: int result = db.SqlScalar<int>("SELECT OBJECT_ID(@name)", new { name = &quo ...
- ormlite android studio,OrmLite-android入门体验
入门体验 OrmLite 是一个轻量级的ORM(Object Relational Mapping)数据库工具,方便持久化java对象到数据库 1. 使用准备 使用androidADT创建androi ...
- Android ORMLite 框架的入门用法
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/39121377 大家在Android项目中或多或少的都会使用数据库,为了提高我们的 ...
- mysql ormlite_Loogn.OrmLite
简要 Loogn.OrmLite是一个超简单.超高效.超灵活的基于.net standard 2.0的数据访问组件! 特点 支持sqlserver.mysql.sqlite3数据库: 通过扩展方法扩展 ...
- 即使用ADO.NET,也要轻量级实体映射,比Dapper和Ormlite均快
不管出于什么原因,有时候框架人员摒弃了NH或EF,而使用原生数据库访问对象. 为了优美的编程,用上我写的轻量级映射扩展方法吧 目的:将SqlDataReader自动转换成T类型 代码如下: /// & ...
- [Android学习系列8]数据库ormlite笔记
一.下载包 http://ormlite.com/ http://ormlite.com/releases/ 把core包 和 android包 build path到项目里 二.参考资料 htt ...
最新文章
- LoadRunner监控Linux
- 微博polg什么意思_贾磊:广东发微博给CBA造成了负面影响 方硕的意思可能没表达清楚...
- SAP SD基础知识之SD常用BAPI
- Linux Kernel Namespace实现: namespace API介绍
- java object转map_Java反序列化学习之CommonsCollections1
- 29岁学python的建议_学习Python的建议
- 你的气质里藏着 英文_寓意满满的小众英文名,高格调、高颜值,挑一个喜欢的吧...
- 爱奇艺回应迷雾剧场停播:以完成后期的定档官宣时间为准
- MongoDB3.xxx 用户创建
- OpenShift 4 - Pod的亲和性/反亲和性
- WPF视频会议系统资料
- 计算机辅导资料,计算机基础辅导资料.doc
- Doris之数据划分(全面)
- 在线程序员 计算器 (中文)
- 利用四阶龙格库塔法(Runge-Kutta methods)求解常微分方程并用其迭代式用MATLAB绘制分叉混沌图
- XAMARIN运行IPHONE模拟器
- 最新的 CocoaPods 的使用教程 上传podspec
- 模型包装,答辩吹牛方法论!
- qq安装路径无效Linux,QQ提示安装路径无效您没有权限的两种解决办法
- C++用unordered_map查表代替if else/switch case多判断语句