android数据库其实使用的不多,dhroid框架中的网络缓存使用了数据库我就写了也写了一个数据库操作工具
dhroid 数据库基本还是单表操作多,为了简单我只做了单表,那些级联,懒加载,什么的分两个操作区解决吧
初始化在application中
//数据库初始化 DhDB db=IocContainer.getShare().get(DhDB.class); db.init("dhdbname", Const.DATABASE_VERSION);
如果你的数据库在sd卡上,你可以
db.initInSD("文件夹位置", "dhdbname", Const.DATABASE_VERSION);
bean定义
@Entity(table="student") public class Student { @Column(pk=true) public Long id; public String name; @Column(name="num_no") public String num; @Column(name="create_time") public Date createTime; public int age; public int sex; public boolean dangyuang; @NoColumn public String temp; //setget... }
@Entity(table="student") 表示这个对象进行持久化,可以不添加,默认都可以,默认对象名和表名相同
默认的属性都会被持久化的默认列名和属性名相同
@Column(pk=true)定义主键
@Column(name="num_no")定义列名
@NoColumn 表示不参加持久化
属性支持基本数据类型
保存和更新
if(student == null){ student=new Student(); isnew=true; } student.setName(nameV.getText().toString()); student.setNum(numV.getText().toString()); student.setSex(Integer.parseInt(sexV.getText().toString())); student.setAge(Integer.parseInt(ageV.getText().toString())); student.setDangyuang(dangyuanV.getText().toString().equals("1")?true:false); student.setCreateTime(new Date()); if(isnew){ db.save(student); }else{ db.update(student); }
删除
db.delete(student);
加载
student=db.load(Student.class, id);
查询(基本的sql你还是需要了解的啊)
List<Student> list=db.queryList(Student.class, ":name like ? or :num like ?","%name%","%num%");
:num 已:开头的占位符表示对象属性(这里的num属性对应数据库里的num_no)
这样就可以使用对象属性进行查询,而不用了解数据库
? 占位符指数据用后面的数据替换 方法支持多个参数
了解spring jdbctemplete 的应该很喜欢这样的写法
增删改查都都有了是不是很好用啊
相关推荐
在文件名称列表中,我们看到`DHDb-main`,这通常是一个项目的主目录或启动点,可能包含了DHDb脚本本身以及其他相关的配置文件和资源。 综上所述,DHDb是一个利用Shell脚本与GitHub交互的工具,通过GitHub Actions...
要有DHDB 第一版数据库(另外发布) 要有SQL Script做基本初值设置 开发测试阶段 早上Build : 每天11 AM --- 部署人员应即部署测试 下午Build : 每天4 PM --- 部署人员应即部署测试 晚间Build : 如有加班--- 部署人员...
Struts2+Hibernate+mysql+eclipse在线考试系统_hy4.zip
【Java】基于rbac思想以及ssm框架(导入jar包的方式)的权限管理项目
AndrewNg机器学习对应PythonJupyterNotebook_hy4
玄武是针对影视特效和动画行业的项目流程管理系统,基于图形图像行业流行的Python开发语言,整合现有CG工作流程,通过_hy4
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
基于Nestjs的RBAC权限系统开发实战_hy4
【Python】基于rbac权限分配、动态二级菜单、面包屑、批量操作_pgj
SpringBlade3.0架构核心工具包,SpringBlade是一个由商业级项目升级优化而来的SpringCloud分布_hy4
该项目是一款基于Vue框架的uniapp分销商城小程序设计源码,包含1412个文件,涵盖471个JavaScript文件、292个Vue文件、253个Markdown文件、202个JSON文件、43个映射文件、34个SCSS文件、33个微信小程序样式文件、33个WXML文件、22个PNG图片文件、9个WXS文件。该项目适用于构建分销商城小程序,支持微信小程序平台,并集成了多种编程语言和文件类型,以实现高效和灵活的开发需求。
java教务管理系统教学管理系统,系统页面设计良好、内容丰富、功能齐全,适合用做课设学习。含有源码、数据库文件以及项目资料文档,感_hy4
【Python】四川大学微服务健康每日报自动打卡
设计模式学习笔记_hy5
该项目是一个以C++为主要编程语言的算法设计与实现学习资源,包含190个文件,涵盖131个头文件(.h)、41个C++源文件(.cpp)、12个其他文件(.a)、2个文本文件(.txt)、1个Git忽略文件(.gitignore)、1个Markdown文件(.md)、1个C编译配置文件(.cc)、1个Protocol Buffers描述文件(.proto)。这些文件共同构成了一个全面的学习材料,旨在帮助开发者深入理解算法设计原理及其在C++语言中的实现。
使用C++实现的23种设计模式_hy4
医疗器械检测系统源码分享
分布式事务tx-lcn_hy4