花粉乐分享平台宣传视频
> 华为资讯 > 华为资讯 > 鸿蒙编程 > JAVA程序员转战华为鸿蒙开发:HarmonyOS PA与关系型数据库浅析
JAVA程序员转战华为鸿蒙开发:HarmonyOS PA与关系型数据库浅析
来源:猿百问
2022-07-18 16:27:37
874
管理
闲言碎语 现今企业研发,前后端分离模式已经是常态。作为JAVA程序员更多是关注服务端接口、服务器、数据库相关的后端研发工作,比较少见:参与界面开发相关工作。 分工合作 HarmonyOS系统自去年开始推出以来,不管是自身的完善程度、生态建设等都才起步。如果采取相关技术适配自己的产品,大部分企业不管是技术人才储备、还是分工,均远远没有明确。 而据我了解:不管是社区还是开发者联盟,里边的大部分成员,其实对于‘技术上手’都是个问题(截止日期2021.5.31)。 丧 本文概要 内容讲解,是基于目前HarmonyOS进展情况(2021.5.31)。HarmonyOS支持的数据库是啥,以及如何操控它? PA概念 应用所具备能力的抽象,称为Ability(类比JAVA中面向对象概念,这里是对能力抽象)。 HarmonyOS将Ability分为两类:FA(Feature Ability)和PA(Particle Ability),两者的差别在于,PA没有界面。 PA支持两种模板,Service Ability和Data Ability,本文浅要讲解的内容和Data Ability这块有一定关系,这里可以先引入这个概念,后面抽空写章节做讲解。 数据库DataBase 关系型数据库 在JAVA研发中,Mysql数据库使用占比是最大的,然而在HarmonyOS中不支持(目前不支持,2021.5.31)。 #鸿蒙#支持基于SQLite组件定制的关系型数据库(Relational Database,RDB),HarmonyOS封装了一些底层,做了自己的一些定制化,因此和我们常见用法就有了一定的区别。按官方的说法HarmonyOS提供的关系型数据库功能更加完善,查询效率更高。 我个人持中立态度,只认可它有自己的特色~但至于好不好,这个嘛,至少目前它很局限性。
  • 基本概念 以关系模型为基础创建的数据库,采用行和列的形式存储数据。
sql语句
  • 谓词 用来定义数据库的操作条件,数据库中常用来代表数据实体性质、特征或者实体之间关系的词项。
  • 结果集 用户查询数据库之后的结果集合。
  • SQLite数据库 一款轻型的、遵守ACID准则的关系型开源数据库。
代码示例 //new一个数据库配置对象,configStoreConfig config = StoreConfig.newDefaultConfig("RdbStoreONE.db");//在回调函数里,我们做一些初始化操作,注意:这种写法,JAVA做spring开发的小伙伴是不常用的//但在HarmonyOS开发里,几乎全篇这种,所以要去适应这种写法private static RdbOpenCallback callback = new RdbOpenCallback() { @Override public void onCreate(RdbStore store) { //这个函数是代表数据库创建时,我们在这里可以做一些我们想做的事。 store.executeSql("CREATE TABLE IF NOT EXISTS user (user_id INTEGER PRIMARY KEY AUTOINCREMENT, user_name TEXT NOT NULL, age INTEGER)"); }};
  • StoreConfig 数据库配置类。
  • RdbOpenCallback 数据库创建时的回调信息类。
上述代码中,我们创建了一个数据库配置类,然后new了一个回调对象CALLBACK。在callback里边我们设定了:创建数据库的时候,同时创建一张user表。 //获取RdbStore实例DatabaseHelper helper = new DatabaseHelper(context);RdbStore store = helper.getRdbStore(config, 1, callback, null);
  • RdbStore 数据库操作类,增、删、改、查,均可通过其实例来进行操作。
//定义字段,用户类字段,对应数据库user表中的相关filed字段。String[] columns = new String[] {"user_id", "user_name", "age"};//设置查询条件RdbPredicates rdbPredicates = new RdbPredicates("user").equalTo("age", 18); //执行查询,获取结果集合ResultSet resultSet = store.query(rdbPredicates, columns);
  • ResultSet 代码中执行查询操作后,返回的数据合集,以Set对象接收,这是HarmonyOS里边定义好的。
  • RdbPredicates 谓词,数据库操作条件的集合,我们用来封装一些SQL语句中的条件。
end 结语 关于JAVA程序员在HarmonyOS中操作数据库,入门的讲解就到这里了,希望对需要的人能有所帮助。 一切讲究个缘分,我们是否还有缘分再次碰面呢~[得意]

花粉社群VIP加油站

2
点赞
赏礼
赏钱
0
收藏
免责声明:本文仅代表作者个人观点,与花粉乐分享无关。其原创性以及文中陈述文字和内容未经本网证实,对本文以及其中全部或者 部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
凡本网注明 “来源:XXX(非花粉乐分享)”的作品,均转载自其它媒体,转载目的在于传递更多信息,并不代表本网赞同其观点和对 其真实性负责。
如因作品内容、版权和其它问题需要同本网联系的,请在一周内进行,以便我们及时处理。
QQ:2443165046 邮箱:info@hflfx.com
关于作者
哇哈哈(采蜜高手)
文章
497
主题
0
关注
0
粉丝
0
点击领取今天的签到奖励!
签到排行
随手拍
54个圈友 0个话题
华为手机随手拍,记录生活点滴之美好
华为P30pro
51个圈友 0个话题
这里是华为P30pro手机交流圈,欢迎华为P30pro用户进群交流
体验官
60个圈友 2个话题
华为花粉体验官,体验官专属的交流群
登录后查看您创建的圈子
登录后查看您创建的圈子
所有圈子
杭州互联网违法和不良信息举报平台 网络110报警服务 浙ICP备17046585号
2
0
分享
请选择要切换的马甲:

个人中心

每日签到

我的消息

内容搜索