你的位置:首页 > 操作系统

[操作系统]Android 利用xUtils框架实现对sqllite的增删改查


首先下载xUtils,下载地址:https://github.com/wyouflf/xUtils  把下载好的文件压缩,把里面的jar包拷进项目中如图所示:

这里新建一个User类进行测试增删改查

package com.example.xutilsdemo;public class User {  private int id;  private String name;  private String email;  public int getId() {    return id;  }  public void setId(int id) {    this.id = id;  }  public String getName() {    return name;  }  public void setName(String name) {    this.name = name;  }  public String getEmail() {    return email;  }  public void setEmail(String email) {    this.email = email;  }  public User(String name, String email) {    this.name = name;    this.email = email;  }  public User(){      }  @Override  public String toString() {    return "User [id=" + id + ", name=" + name + ", email=" + email + "]";  }   }

核心代码:

package com.example.xutilsdemo;import java.util.List;import com.lidroid.xutils.DbUtils;import com.lidroid.xutils.db.sqlite.Selector;import com.lidroid.xutils.db.sqlite.WhereBuilder;import com.lidroid.xutils.exception.DbException;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.view.View;import android.widget.Toast;public class MainActivity extends Activity {  //直接使用Dbutils,如果不能使用这个类,说明包没有导入成功  DbUtils db ;  @Override  protected void onCreate(Bundle savedInstanceState) {    super.onCreate(savedInstanceState);    setContentView(R.layout.activity_main);    //创建数据库,名称为mydb    db= DbUtils.create(this,"mydb");  }  //保存数据事件  public void saveClick(View v){    DbUtils db = DbUtils.create(this,"mydb");    User user = new User("hyy","272958293@qq.com"); //这里需要注意的是User对象必须有id属性,或者有通过@ID注解的属性    try {      db.save(user);      Toast.makeText(this, "ok",Toast.LENGTH_SHORT).show();    } catch (DbException e) {      // TODO 自动生成的 catch 块      e.printStackTrace();    } // 使用saveBindingId保存实体时会为实体的id赋值  }    //查询数据事件  public void queryClick(View v){    try {      List<User> list=db.findAll(User.class);      for (User user : list) {        System.out.println(user);      }    } catch (DbException e) {      // TODO 自动生成的 catch 块      e.printStackTrace();    }  }    //根据条件查询事件  public void queryByClick(View v){    try {      User user=db.findFirst(Selector.from(User.class).where("name","=","hyy"));      Toast.makeText(this,user.toString(), Toast.LENGTH_SHORT).show();    } catch (DbException e) {      // TODO 自动生成的 catch 块      e.printStackTrace();    }  }    //更新数据事件  public void updateClick(View v){    User user=new User();    user.setId(1);    user.setName("huyuan");    user.setEmail("272958293@qq.com");        try {      db.update(user,"name","email");    } catch (DbException e) {      // TODO 自动生成的 catch 块      e.printStackTrace();    }  }  //删除事件  public void deleteClick(View v){    try {      db.delete(User.class,WhereBuilder.b("id", "=", "1"));    } catch (DbException e) {      // TODO 自动生成的 catch 块      e.printStackTrace();    }  }}