Android将list数据通过LitePal保存到本地(集合保存到本地)

来源:互联网 发布:mac怎么装千牛 编辑:程序博客网 时间:2024/05/16 09:12

有时候我们需要将list集合保存到本地,自己写起来太麻烦,就找到了强大的框架LItePal,git地址  https://github.com/LitePalFramework/LitePal

本文来自:http://blog.csdn.net/elinavampire/article/details/40621751

导入jar包就可以使用了,直接上代码:

[java] view plain copy
  1. package com.sdufe.litepal;  
  2.   
  3. import java.util.ArrayList;  
  4. import java.util.List;  
  5.   
  6. import org.litepal.crud.DataSupport;  
  7. import org.litepal.tablemanager.Connector;  
  8.   
  9. import android.app.Activity;  
  10. import android.database.sqlite.SQLiteDatabase;  
  11. import android.os.Bundle;  
  12. import android.widget.TextView;  
  13.   
  14. import com.sdufe.litepal.model.Student;  
  15.   
  16. /** 
  17.  * @author 子墨 
  18.  * 
  19.  * 2014-10-30 
  20.  */  
  21. public class MainActivity extends Activity {  
  22.   
  23.     private SQLiteDatabase db;  
  24.     private List<Student> list;  
  25.     private Student student;  
  26.     private TextView mInformation;  
  27.   
  28.     @Override  
  29.     protected void onCreate(Bundle savedInstanceState) {  
  30.         super.onCreate(savedInstanceState);  
  31.         setContentView(R.layout.activity_main);  
  32.         mInformation = (TextView) findViewById(R.id.student_information);  
  33.         // 生成student表  
  34.         db = Connector.getDatabase();  
  35.           
  36.         initDate();  
  37.           
  38.         //保存  
  39.         DataSupport.saveAll(list);  
  40.           
  41.         //查找  
  42.         student = DataSupport.find(Student.class3);  
  43.         mInformation.setText("姓名:" + student.getName() + "学号:"  
  44.                 + student.getNumber() + "性别:" + student.getSex());  
  45.           
  46.         //更新  
  47.         student=new Student();  
  48.         student.setName("吸血鬼");  
  49.         student.update(4);  
  50.           
  51.         //删除  
  52.         DataSupport.delete(Student.class4);  
  53.     }  
  54.   
  55.     /** 
  56.      * 表中数据赋值 
  57.      */  
  58.     private void initDate() {  
  59.   
  60.         list.add(new Student(5"20100854213""klaus""男"));  
  61.         list.add(new Student(6"20100854213""klaus""男"));  
  62.         list.add(new Student(7"20100854213""klaus""男"));  
  63.         list.add(new Student(8"20100854213""klaus""男"));  
  64.         list.add(new Student(9"20100854213""klaus""男"));  
  65.     }  
  66.   
  67. }  

都很简单,主要是人家源码太强大,直接抓来用就好,我的list保存主要是通过saveall实现


还有一点要注意的就是在assets文件夹下新建litepal.xml,不要忘记去配置它:

[html] view plain copy
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <litepal>  
  3.     <!-- 数据库库名 -->  
  4.     <dbname value="students" >  
  5.     </dbname>  
  6.     <!-- 版本号 -->  
  7.     <version value="1" >  
  8.     </version>  
  9.   
  10.     <list>  
  11.         <mapping class="com.sdufe.litepal.model.Student"></mapping>  
  12.     </list>  
  13.   
  14. </litepal>  

代码地址:http://download.csdn.net/detail/elinavampire/8101117



原创粉丝点击