怎么感觉 Room 这么难用啊

2023-05-24 14:17:45 +08:00
 shakukansp
虽说会用了感觉也还行……但是就……感觉不如 prisma
安卓操作本地数据库就这一个选择了吗
3010 次点击
所在节点    程序员
14 条回复
x77
2023-05-24 14:44:17 +08:00
Room 的最大作用是提供了一层 DAO ,让应用更方便可以使用数据库(几乎不需要编写 SQL 语句),降低数据库的使用门槛。

Android 上有一些第三方的数据库,此外我还见过应用自己集成 SQLite 自己设计个 DAO 的(它不用操作系统的数据库),不过 Room 是官方支持的数据库( Wrap ),设计的合理代码质量比较靠谱。
mrgeneral
2023-05-24 15:55:17 +08:00
R...O...??? R...M.... ORM?
mrgeneral
2023-05-24 15:57:39 +08:00
@mrgeneral 粘贴错了,sorry
Parva
2023-05-24 16:23:19 +08:00
同感。公司项目用的是 greendao (应该是挺老的一个库,不过安卓现在什么不老。。。)
做了个新模块改用 room ,定义 dao+注解 sql 、传参调用好累,自动升级数据库还要生成个 json 目录。
xloger
2023-05-24 19:20:00 +08:00
GreenDao 我遇到过的一个问题是:旧项目的用法比较魔幻,JSON 存在数据库里,然后它只要有一条数据解析失败,则整个抛异常了,没法获取可用的数据。

ROOM 我遇到过的一个问题是:遇到外界生成的数据库,里面用了个非标准的时间类型,我怎么都解析不了,不读这个属性不行,解析成 Int 或者 String 不行。最后换成系统自带的那个 SQL 库解决了。

Android 操作本地数据库是还支持传统的传个 SQL 语句然后用指针挨个读的。不过它的开发发展趋势就是教你写代码,还是适应 ROOM 吧 =。=
huangzhiyia
2023-05-24 19:35:22 +08:00
Android 和前端技术迭代太快,还是后端安逸🤣
GalaxyVIP
2023-05-24 21:22:03 +08:00
Room 都出这么久了,该填的坑应该都差不多了吧。刚出的时候我就在用了,比手搓 SQLite 各种 Helper 舒服多了,就是早期对一些奇葩复杂的 SQL 语句不支持,不知道现在咋样了。
Helsing
2023-05-24 21:31:36 +08:00
你要是手错过 SQLite 就不会这样想,以前数据库升级也很麻烦,用 Room 的话就舒服多了
Zhongwei
2023-05-24 22:14:54 +08:00
SQLDelight
DefoliationM
2023-05-24 23:29:16 +08:00
感觉安卓的各种东西都很难用,非常繁琐,写起来很累人。
roundgis
2023-05-25 04:04:14 +08:00
可以試試 realm
ww940521
2023-05-25 09:35:53 +08:00
ROOM 稳得一批,比手搓 SQL 爽太多。
WebKit
2023-05-25 10:40:40 +08:00
试试 objectbox 无论是性能还是易用性都碾压 room
WebKit
2023-05-25 10:41:25 +08:00
@Parva #4 Android 的东西都更新的非常频繁吧。。是你们自己不关注

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/942571

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX