这两个方法都可以创建或打开一个现有的数据库,并返回一个可对数据库进行读写操作的对象。...参数: Context; 数据库名; Cursor:允许我们在查询数据的时候返回一个自定义的Cursor,一般传null; 当前数据库的版本号:可用于对数据库进行升级操作。...android:layout_height="wrap_content" android:text="Create Database" /> 添加一个按钮用于创建数据库...升级数据库的最佳写法 之前升级数据库是简单的在onUpgrade()方法中删除当前所有表然后重新执行一遍onCreate()。 这样做的弊端为如果你的应用升级一次数据库用户之前的数据就会被清空。...当指定的数据库版本号大于当前数据库版本号的时候,就会进入onUpgrade()方法中执行更新操作,这里需要为每一个版本号赋予其所对应的数据库变动,然后再onUpgrade()方法中对当前数据库的版本号就行判断
Android数据库加密 一、简介 SQLite是一个轻量的、跨平台的、开源的数据库引擎,它的读写效率、资源消耗总量、延迟时间和整体简单性上具有的优越性,使其成为移动平台数据库的最佳解决方案(如Android...Android系统内置了SQLite数据库,并且提供了一整套的API用于对数据库进行增删改查操作,具体就不详细说明了。 然而,Android平台自带的SQLite有一个致命的缺陷:不支持加密。...三、解决方案* 1.将数据加密后再写入数据库: 我们可以对数据的数据库名,表名,列名就行md5,对存储的数据进行加密,例如进行aes加密(Android数据加密之Aes加密),查询的时候再对数据进行解密...github地址 导入SQLCipher加密库 implementation 'net.zetetic:android-database-sqlcipher:4.2.0' 替换原生的包 android.database.Cursor...为 net.sqlcipher.Cursor android.database.sqlite.SQLiteDatabase 为 net.sqlcipher.database.SQLiteDatabase
在android上跑起来一个web服务器,可供电脑和手机通过http访问。这个需求并不常见,网上资料也不多,找了一会发现了一个不错的框架。...如果需要给服务器传值,我们可以用192.168.1.30:8081?...简单的服务器搭建就是这样,在serve方法里可以接受客户端请求并响应值。至于文件上传等其他的,可以参考git上下载下来的代码,里面的全是例子。
前言 解决Android SDK无法下载的问题 配置步骤 启动 Android SDK Manager ,打开主界面,依次选择「Tools」、「Options...」...,弹出『Android SDK Manager - Settings』窗口; 在『Android SDK Manager - Settings』窗口中,在「HTTP Proxy Server」和「HTTP...设置完成后单击「Close」按钮关闭『Android SDK Manager - Settings』窗口返回到主界面; 依次选择「Packages」、「Reload」。...由于某些网络接入商进行了劫持,会弹出用户认证界面无法使用,和本镜像服务器配置无关。
目前,Android系统中提供了3种方式的数据持久化技术,即文件存储、SharedPreferences存储以及数据库存储。...Shared Preferences通常用在轻量级的数据存储场景中,比如账号/密码的存储,而数据库则用在数据量比较大的场景中,比如聊天数据的存储。...现在,使用数据库存储时候,一般都会使用一些第三方ORM框架,比如GreenDao。...在Android开发中,集成Greendao通常需要如下几步: 首先,在项目的build.gradle文件中添加依赖: classpath 'org.greenrobot:greendao-gradle-plugin...mImgTT) { this.mImgTT = mImgTT; } } 然后再封装一个统一的管理类: package com.yufulife.xj.model; import android.util.Log
打开数据库 File file=new File(getContext().getExternalFilesDir(null),"learn.db"); SQLiteDatabase database...=SQLiteDatabase.openOrCreateDatabase(file,null); 遍历数据库中的所有表名 Cursor tables=database.rawQuery("select
它的设计目标是嵌入式的,而且占用资源非常低,在内存中只需要占用几百kB的存储空间,这也是Android移动设备采用SQLite数据库的重要原因之一。 ...比起Mysql、PostgreSQL 这两款开源数据库管理系统来讲,SQLite的处理速度更快。 SQLite 没有服务器进程,它通过文件保存数据,该文件是跨平台的,可以放在其他平台中使用。...SQLite 数据库创建 在Android系统中,创建SQLite数据库是非常简单的。...Android系统推荐使用 SQLiteOpenHelper 的子类创建数据库,因此需要创建一个继承自SQLiteOpenHelper,并重写该类中的onCreate()方法和onUpgrade()方法即可... 前面介绍了SQLite 数据库及如何创建数据库,接下来将针对SQLite数据库的增、删、改、查操作进行详细讲解。
Android 数据库框架ormlite 使用精要 前言 本篇博客记录一下笔者在实际开发中使用到的一个数据库框架,这个可以让我们快速实现数据库操作,避免频繁手写sql,提高我们的开发效率,减少出错的机率...简单来说,就是我们定义一个实体类,利用这个框架,它可以帮我们吧这个实体映射到我们的数据库中,在Android中是SQLite,数据中的字段就是我们定义实体的成员变量。 为什么要用ormlite?...java.util.Map; import android.content.Context...; import android.database.sqlite.SQLiteDatabase...hljs-keyword" style="color: rgb(0, 0, 136); box-sizing: border-box;">import com.j256.ormlite.android.apptools.OrmLiteSqliteOpenHelper
Android开发中常用的数据库有5个: 1. OrmLite OrmLite 不是 Android 平台专用的ORM框架,它是Java ORM。支持JDBC连接,Spring以及Android平台。...相比SQLite,Realm更快并且具有很多现代数据库的特性,比如支持JSON,流式api,数据变更通知,以及加密支持,这些都为安卓开发者带来了方便。 Ream提供了五种编程方式的实现。...快速入门: 运行环境 目前我们还不支持 Android 以外的 Java 环境; Android Studio >= 1.5.1 ; 较新的 Android SDK 版本; JDK 版本 >=7; 我们支持...Android API 9 以上的所有版本(Android 2.3 Gingerbread 及以上)。...Exception e) { e.printStackTrace(); } } } 其实这和以前的用法差不多的,有点在于,realm去帮我们管理这个数据库
中添加 maven { url "https://www.jitpack.io" } 如下: classpath 'com.neenbedankt.gradle.plugins:android-apt...:1.8' 如下: 2、app目录下的build.gradle 中添加 apply plugin: 'com.neenbedankt.android-apt' 依赖: apt "com.github.Raizlabs.DBFlow...onCreate() { super.onCreate(); FlowManager.init(this); } } 清单文件配置: 二、使用 1、创建一个数据库类...* @email djlxqx@163.com * blog:http://www.cnblogs.com/xqxacm/ * createAt 2017/11/22 * description: 数据库类...static final int VERSION = 1; //数据库版本号 } 2、创建一个表类 /** * @author xqx * @email djlxqx@163
:对象关系映射)数据库。...version = 1表示数据库的版本,可以做数据库的升级操作。 注意这是一个抽象类,在编译时Room会帮助构建实现类。 现在运行一下,手机或者模拟器都可以。然后什么都不用去做。...等会的数据库表操作就是通过这里的点击事件进行触发。...initDB方法: /** * 初始化数据库 */ private void initDB() { //本地持久化数据库 db = Room.databaseBuilder....allowMainThreadQueries() //数据库创建和打开的事件会回调到这里,可以再次操作数据库 .addCallback(
之前一直都是在SQLite、XUtils、greenDao、Realm这些数据库之间来回折腾。现在终于有一个更“正统”数据库了。 Room是什么? Room是一个持久性数据库。...1、在app/build.gradle中添加以下依赖 implementation 'android.arch.persistence.room:runtime:1.0.0' annotationProcessor...'android.arch.persistence.room:compiler:1.0.0' 你可以点击这里查看最新依赖版本号 2、创建JavaBean @Entity public class User...(每当我们改变数据库中的内容时它都会增加),所以这里使用exportSchema = false 注意:除了添加表映射的类以及和数据库版本外,还要添加exportSchema = false否则会报警告...5、使用数据库 我们终于能够操作我们的数据库了。但是所有的操作必须在后台线程中完成。你可以通过使用AsyncTask,Thread,Handler,RxJava或其它方式来完成。
)数据库。...version = 1表示数据库的版本,可以做数据库的升级操作。 注意这是一个抽象类,在编译时Room会帮助构建实现类。 现在运行一下,手机或者模拟器都可以。然后什么都不用去做。...等会的数据库表操作就是通过这里的点击事件进行触发。...initDB方法: /** * 初始化数据库 */ private void initDB() { //本地持久化数据库 db = Room.databaseBuilder....allowMainThreadQueries() //数据库创建和打开的事件会回调到这里,可以再次操作数据库 .addCallback(
我们知道Android中有四种数据存储方式: SharedPreference存储 content provider SQLite数据库存储 文件存储 今天我们主要说 本地数据库sqlite这种方式,实现读取一个本地数据库...1.将本地数据库db文件拷贝到项目中 2.将项目中db文件写入到本地文件夹中 3.增加打开数据库以及数据读取逻辑 4.增加删除逻辑 ,增加修改逻辑。...Android拷贝逻辑代码 package com.example.testdemo.util; import android.content.Context; import android.os.Environment...本地 操作数据库逻辑(查,删,改) package com.example.testdemo.util; import android.content.Context; import android.database.Cursor...; import android.database.sqlite.SQLiteDatabase; import android.os.Environment; import com.example.testdemo.bean.User
Android手机搭建Web服务器 作者:matrix 被围观: 1,744 次 发布时间:2013-07-13 分类:兼容并蓄 | 一条评论 » 这是一个创建于 3337 天前的主题,其中的信息可能已经有所发展或是发生改变...:jiong: 手机也能当服务器。只要你的流量够用 可以试试~~ 目前就知道两个app: KSWEB https://play.google.com/store/apps/details?...id=ru.kslabs.ksweb 具体使用ksweb搭建服务器见http://www.freehao123.com/android-web/ ANMPP http://anmpp.net/ 后者是国人弄得
1.3 连接服务器 数据库是CS模式的软件,所以要连接数据库必须要有客户端软件。...MySQL数据库默认端口号是3306 1.3.1 window界面连接服务器 1、Navicat 2、MySQL-Front 1.3.2 通过web窗体连接 ?...主要有浏览器就可以访问数据库 1.3.3 命令行连接 host -h 主机 port -P 端口号 (大写) user -u 用户名 password -p 密码 (小写) 例题 -...- 连接数据库 F:\wamp\PHPTutorial\MySQL\bin>mysql -h127.0.0.1 -P3306 -uroot -proot -- 明文 -- 如果连接本地数据库 -h可以省略...如果服务器端口是3306,-P端口号也可以省略 F:\wamp\PHPTutorial\MySQL\bin>mysql -uroot -proot -- 明文 -- 密文 F:\wamp\PHPTutorial
我们都知道 Android的 数据库默认是放在data\data\packageName\datbases\下的; 要导入现有的数据库将我们的数据库在 程序第一次启动的时候将数据库放在这个目录下,然后我们配置好.../** * 将 数据库从 assets 复制到 databases下 */ private void copyDB() { //data/data/packageName/databases/...mkdir.exists()) mkdir.mkdirs(); Log.e(TAG, "copyDb: mkdir="+mkdir.getPath()); //数据库文件 File
这两个方法都可以创建或者打开一个现有的数据库(如果数据库已存在则直接打开,否则创建一个新的数据库),并返回一个可对数据库进行读写的对象。...> 当输入数据然后点击添加的时候数据库会被创建(如果数据库还没被创建),数据会添加成功 我们可以把数据库导出到SQLite Expert去查看表内容,也可以直接在控制台查看一个大概,查看数据库和表有没有被创建...打开mydb.db数据库 输入.table命令查看数据库中有哪些表,这个android_metadata是每个数据库中都会自动生成的,不用管。...SQLite数据库的事务介绍: MainActivity.java import android.content.ContentValues; import android.database.Cursor...db.setTransactionSuccessful(); } catch (Exception e) { // 有catch不至于程序崩溃 Toast.makeText(this, "服务器忙
概述 我这里说的数据库版本指的是: 我们的应用的程序的数据库的用户版本(user_version).比如说下面的情形: 2013年4月,我们第一次 发布了 我们的应用,数据库版本是1。...2013年5月,我们第二次 发布了 我们的应用,数据库版本是2。由于业务需要,我们更改了数据库里的某个表的表结构。...也就是说,当检测到数据库需要升级时,执行这些 用于升级数据库的sql。 通过上面的方式,我们就完成了一次的数据库升级的操作。...android会判断 数据库的版本号,并自动的调用onUpgrade方法。 扩展内容:如何数据库文件的版本 我们通过 SQLite Expert 软件(运行在windows下)。...可以看到的这个数据库文件有个属性 user_version。 它是sqlite数据库的 "PRAGMA " 参数。执行 PRAGMA + sql有可以获得一些数据库文件的元数据信息。
2016-03-16 Android数据库支持 本文节选并翻译《Enterprise Android - Programing Android Database Applications for the...学习目标: 学习Android对SQL的支持。 理解在Java中使用SQL——通过SQLiteDatabase类。 创建数据库——SQLiteOpenHelper类。...Java中执行SQL:SQLiteDatabase类 为了在java代码中针对SQLite数据库执行一些SQL查询等操作,Android 框架提供了SQLiteDatabase类。...Android SQLite API还提供了一系列的API来对应不同的SQL语法。包括insert、update、delete和query等,相应地,还有一些等价的简化方法和数据库管理方法。...Android应用则是外全不同的情况,用户下载并运行apk来安装一个程序,其apk中包含所有相关的数据,安装过程程序自身完成各种引导和设置。如果需要数据库,程序自身负责创建它。
领取专属 10元无门槛券
手把手带您无忧上云