当前位置: 首页 > news >正文

阿里云做的网站程序外贸网站有哪些

阿里云做的网站程序,外贸网站有哪些,国外网站怎么做推广,简易企业网站目录 1、SQLite数据库 目的: 基本操作: 缺点: 解决: 2、ROOM持久性库 目的: 优点: 导入依赖: 主要组件: ​编辑 使用步骤: a.定义数据实体 b.定义数据访问对象(接…

目录

1、SQLite数据库

目的:

基本操作:

缺点:

解决:

2、ROOM持久性库

目的:

优点:

导入依赖:

主要组件:

​编辑

使用步骤:

a.定义数据实体

b.定义数据访问对象(接口)

c.定义数据库类

d.实例化并操作数据库


1、SQLite数据库

目的:

保存重复数据&结构化数据

基本操作:

  • 定义架构的协定
  • 创建数据库
  • 信息添加到数据库
  • 从数据库读取信息
  • 从数据库删除信息
  • 更新数据库
  • 保留数据库连接,一般Activity的onDestroy()中关闭数据库

缺点:

android.database.sqlite  软件包提供Android上使用数据库所需的API,但是API级别较低

  • 没有针对原始SQL查询的编译时验证,耗时又易错
  • 需要使用大量样本代码在SQL查询和数据对象之间转换

解决:

强烈建议使用Room持久性库作为抽象层访问SQLite数据库中信息

2、ROOM持久性库

目的:

将数据保存到本地数据库

在SQLite上提供一个抽象层,以便充分利用SQLite&流畅访问数据库

优点:

  • 提供针对SQL查询的编译时验证
  • 提供方便注释,可最大限度减少重复和容易出错的代码样板
  • 简化数据库迁移路径

导入依赖:

讲下面依赖项添加到build.gradle文件

dependencies {val room_version = "2.6.1"implementation("androidx.room:room-runtime:$room_version")annotationProcessor("androidx.room:room-compiler:$room_version")// To use Kotlin annotation processing tool (kapt)kapt("androidx.room:room-compiler:$room_version")// To use Kotlin Symbol Processing (KSP)ksp("androidx.room:room-compiler:$room_version")// optional - Kotlin Extensions and Coroutines support for Roomimplementation("androidx.room:room-ktx:$room_version")// optional - RxJava2 support for Roomimplementation("androidx.room:room-rxjava2:$room_version")// optional - RxJava3 support for Roomimplementation("androidx.room:room-rxjava3:$room_version")// optional - Guava support for Room, including Optional and ListenableFutureimplementation("androidx.room:room-guava:$room_version")// optional - Test helperstestImplementation("androidx.room:room-testing:$room_version")// optional - Paging 3 Integrationimplementation("androidx.room:room-paging:$room_version")
}

主要组件:

  • 数据库类(Database):用于保存数据库&外界访问数据库
  • 数据实体(Entities):表
  • 数据访问对象(Dao):提供数据库增删改查的方法

使用步骤:

a.定义数据实体

@Entity
data class User(@PrimaryKey val uid: Int,@ColumnInfo(name = "first_name") val firstName: String?@ColumnInfo(name = "last_name") val lastName: String?
)

b.定义数据访问对象(接口)

@Dao
interface UserDao {@Query("SELECT * FROM user")fun getAll(): List<User>@Query("SELECT * FROM user WHERE uid IN (:userIds)")fun loadAllByIds(userIds: IntArray): List<User>@Query("SELECT * FROM user WHERE first_name LIKE :first AND " +"last_name LIKE :last LIMIT 1")fun findByName(first: String, last: String): User@Insertfun insertAll(vararg users: User)@Deletefun delete(user: User)
}

c.定义数据库类

  • 带有@Database注解,注解相关联 数据实体
  • 该类为抽象类,继承并扩展RoomDatabase
  • 定义获取Dao类的抽象方法
@Database(entities = [User::class], version = 1)
abstract class AppDatabase : RoomDatabase() {abstract fun userDao(): UserDao
}

d.实例化并操作数据库

val db = Room.databaseBuilder(applicationContext,AppDatabase::class.java, "database-name").build()val userDao = db.userDao()
val users: List<User> = userDao.getAll()

http://www.tj-hxxt.cn/news/62451.html

相关文章:

  • wordpress 制作站长工具seo综合查询收费吗
  • 动态网站开发概述b2b推广网站
  • 企业网站做几个合适最好用的搜索神器
  • 新wordpress快速收录seo监控
  • 部门网站建设宗旨软文推广公司
  • 南通网站制作哪个好南京网络推广公司排名
  • 网站注册域名后怎么做网络服务提供者
  • 完整的社群营销方案合肥seo服务商
  • wordpress自动facebookseo会被取代吗
  • 网站建设分析app优化网站
  • 东莞常平网站建设seo外链推广平台
  • WordPress查看用户密码长沙seo优化价格
  • 网站建设开发报告西安官网seo技术
  • 响应式网站软件app推广之家
  • 网易免费企业邮箱注册武汉seo服务多少钱
  • 企业网站建设 价格自己创建一个网站需要多少钱
  • 鼓楼网站seo搜索引擎优化乐天seo培训
  • 建设部网站1667号优化推广
  • 站长之家关键词查询营销咨询公司排名
  • 哈尔滨网站建设那家好百度域名提交收录网址
  • java网站开发详解百度免费网站制作
  • 官方网站开发公司常用的网络营销方法及效果
  • 湖北网站建设平台外包网站
  • 贵阳网站建设设计公司东莞做网站公司首选
  • 佛山新网站建设如何百度联盟广告收益
  • 网站服务器平台佛山网站优化排名推广
  • 微信官方网站是多少钱搜索引擎优化指南
  • 改变关键词对网站的影响找相似图片 识别
  • b2b网站推广方案怎么写新产品推广方式有哪些
  • 网站搭建价格表防城港网站seo