8种机械键盘轴体对比
本人程序员,要买一个写代码的键盘,请问红轴和茶轴怎么选?
ContentProvider
1、 ContentProvider 是如何实现数据共享的
在 Android 中如果想将自己应用的数据(一般多为数据库中的数据)提供给第三发应用,那么我们只能
通过 ContentProvider 来实现了。
ContentProvider 是应用进程之间共享数据的接口。使用的时候首先自定义一个类继承
ContentProvider,然后 覆写 query、insert、update、delete 等方法。因为其是四大组件之一因此
必须在 AndroidManifest 文档中进行注 册。1
2
3
android:name="com.itheima.contenProvider.provider.PersonContentPro
vider"android:authorities="com.itheima.person" />
第三方可以通过 ContentResolver 来访问该 Provider。
2、为什么要用 ContentProvider它和 sql 的实现上有什么差别
ContentProvider 屏蔽了数据存储的细节,内部实现对用户完全透明,用户只需要关心操作数据的 uri 就
可以了, ContentProvider 可以实现不同 app 之间共享。
Sql 也有增删改查的方法,但是 sql 只能查询本应用下的数据库。而 ContentProvider 还可以去增删
改查本 地文档. xml 文档的读取等。
3、ContentProvider、ContentResolver、ContentObserver 之间的关系
ContentProvider 内容提供者,用于对外提供数据
ContentResolver.notifyChange(uri)发出消息
ContentResolver 内容解析者,用于获取内容提供者提供的数据
ContentObserver 内容监听器,可以监听数据的改变状态
ContentResolver.registerContentObserver()监听消息。
4、在高并发下进行数据库查询
(这个问题的回答很广泛,可以自由发挥)
比如:不要关联多表查询,减少链接时间,创建索引、将查询到的数据采用缓存策略等等。