https://github.com/wyouflf/xUtils3
可以根据xutils3中的说明进行配置。
compile 'org.xutils:xutils:3.5.0'
以上为xutils3的插件配置,如使用则参考github中针对xutils3的说明。
import org.xutils.db.annotation.Column;
import org.xutils.db.annotation.Table;
/**
* Created by hczmhy on 2017/5/30.
*/
@Table(name = "person")
public class preson {
@Column(name="_id")
private String id;
@Column(name="name")
private String name;
@Column(name = "salary")
private Double salary;
@Column(name="pic")
private byte[] pic;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Double getSalary() {
return salary;
}
public void setSalary(Double salary) {
this.salary = salary;
}
public byte[] getPic() {
return pic;
}
public void setPic(byte[] pic) {
this.pic = pic;
}
}
参数中的5这个数值的字段不会进行更新,因为使用dbutils则自动增长不支持手动分配id
public void insert() throws Exception(){
//如果用了dbutils则自动增长不支持手动分配id
Person person = new Person(5,"admin-5",3333.33,null);
db.save(person);
}
在更新和删除中,使用到了whereBuilder。在这里whereBuilder构建sql语句。
Person person =db.findById(Person.class,10);
10为id
log.i("test","findById="+person.toString());中的toString会通过Person中的空的构造函数构建,所以在Person的类中需要添加一个空的构造函数;
List list = db.findAll(Person.class);
Log.i(“test”,”findAll=”+list);
person = db.findFirst(Selector.from(Person.class).where(“_id”,”>”,5));
Log.i(“test”,”findFirst—>”+person.toString());
如果on in between则最后的参数必须是数组或者集合
例一(in):
int[] ids = new int[]{1,3,5};
db.findAll(Selector.from("person.class").where(WhereBuilder.b("name","like","%admin%").and("_id","in",ids)));
Log.i("test","findFirst-- Selector->"+person.toString());
例二(between):
List list = new ArrayList();
list.add(121.00);
list.add(22222.00);
db.findAll(Selector.from("person.class").where(WhereBuilder.b("name","like","%admin%").and("salary","bettwen",list)));
Log.i("test","findFirst-- Selector->"+person.toString());
db.findAll(Selector.from("person.class").where(WhereBuilder.b("name","like","%admin%").orderBy("salary",true).offset(0).limit(5)));
使用DBModel进行指定列的查询
public void select02() throws Exception{
db.findDbModelAll(DbModelSelector.from(Person.class).select("_id","name").where("name","like","%%").orderBy("salary",true));
for(DbModel temp:modelAll){
Log.i("test","_id"+temp.getString("_id")+",salary"+temp.get);
}String("name")
}
第一步:
第二步:
@注:如果使用Android stutio 开发的话,则DaoConfig就不用配置参数。
第三步:
ListView lv=(ListView)findViewById(R.id.lv);
//listView不能通过addview方法加载数据,因为需要适配格式方便优化。
//通过适配器来把数据交给listview组件lv.setAdapter中的方法
其中view.inflate可以将组件加载到listview中。