SQLCipher的导入和基本使用
来源:互联网 发布:iphone的看书软件 编辑:程序博客网 时间:2024/06/17 12:44
SQLCipher是分为社区版和商业版,我这里现在只介绍社区版怎么使用:
官网,里面可以看到应该导入什么依赖SQLCipher官网
import android.content.Context;import net.sqlcipher.database.SQLiteDatabase;import net.sqlcipher.database.SQLiteOpenHelper;public class MyDatabaseOpenHelper extends SQLiteOpenHelper { public MyDatabaseOpenHelper(Context context) { super(context, "chenye.db", null, 1); } @Override public void onCreate(SQLiteDatabase db) { db.execSQL("create table if not exists Person(_id Integer PRIMARY KEY AUTOINCREMENT,NAME varchar(32),AGE varchar(32))"); } @Override public void onUpgrade(SQLiteDatabase sqLiteDatabase, int i, int i1) { }}
import android.content.ContentValues;import android.content.Context;import android.util.Log;import net.sqlcipher.Cursor;import net.sqlcipher.database.SQLiteDatabase;import java.util.ArrayList;import java.util.List;public class DbManager { private static final String TAG = "cy===DbManager"; private SQLiteDatabase mDb; private DbManager() { } private static final class Holder { private static final DbManager INSTANCE = new DbManager(); } public static DbManager getInstance() { return Holder.INSTANCE; } public DbManager init(Context context) { SQLiteDatabase.loadLibs(context); MyDatabaseOpenHelper helper = new MyDatabaseOpenHelper(context); mDb = helper.getWritableDatabase("YEDASHEN"); return this; } public boolean insert(List<Person> persons) { boolean flag = true; ContentValues values = new ContentValues(); for (Person person : persons) { values.clear(); values.put("name", person.getName()); values.put("age", person.getAge()); long person1 = mDb.insert("Person", null, values); flag = person1 > 0; } return flag; } public List<Person> query() { List<Person> persons = new ArrayList<>(); Cursor cursor = mDb.rawQuery("select * from Person", null); while (cursor.moveToNext()) { Person person = new Person(); try { person.setName(cursor.getString(cursor.getColumnIndex("NAME"))); person.setAge(cursor.getString(cursor.getColumnIndex("AGE"))); persons.add(person); } catch (Exception e) { Log.i(TAG, e.toString()); } } cursor.close(); return persons; }}
import android.os.Bundle;import android.support.v7.app.AppCompatActivity;import android.util.Log;import android.widget.Toast;import java.util.ArrayList;import java.util.List;public class MainActivity extends AppCompatActivity { private static final String TAG = "cy===MainActivity"; private DbManager mDbManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); mDbManager = DbManager.getInstance().init(this); insertData(); query(); } private void insertData() { List<Person> persons = new ArrayList<>(); persons.add(new Person("CY", "25")); persons.add(new Person("YL", "24")); persons.add(new Person("HY", "24")); if (mDbManager.insert(persons)) { Toast.makeText(this, "插入数据成功", Toast.LENGTH_SHORT).show(); } else { Toast.makeText(this, "插入数据失败", Toast.LENGTH_SHORT).show(); } } public void query() { List<Person> persons = mDbManager.query(); Log.i(TAG, persons.toString()); }}
阅读全文
0 0
- SQLCipher的导入和基本使用
- SQLCipher的使用
- SQLCipher的使用
- (IOS)sqlcipher和FMDB的使用总结(原创)
- Android数据库--Sqlcipher的使用
- 基于Sqlcipher和GreenDao的数据库加密
- iOS 使用sqlcipher和openssl加密数据库时遇到的问题
- 如何使用SQLCipher给FMDB的数据库加密?
- sqlcipher开源项目的ubuntu编译和交叉编译
- sqlcipher的移植
- SQLCipher的异常总结
- 导入opensource sqlcipher.xcodeproj错误解决
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- ios开发FMDB导入SQLCipher加密数据库
- 剑指offer 排序二叉树的合法性
- HTTP Methods 的绝佳描述(来自“Web Scraping with Python”第88页)
- The Application of Cisco compatible 10GBASE-T Transceiver
- IDEA添加项目为library
- LeetCode 12. Integer to Roman
- SQLCipher的导入和基本使用
- 2017-10-31 3周2次课
- 正则表达式
- spring cloud踩坑日志(5)- ribbon的简单应用
- 超强PCB布线设计经验谈附原理图(五)
- 从二分查找到B+树索引原理
- 阿里云马来西亚大区面向全球开放服务,搜狗将于下月正式登陆纽交所 | 大数据24小时
- vmware突然连接不上网络
- 杭州趣链科技CEO李伟:区块链场景分析和实践