最基本的操作,一共需要四步:
1.在自定义application内启动xutils3
public class MyApplication extends Application { @Override public void onCreate() { super.onCreate(); x.Ext.init(this); x.Ext.setDebug(false); //输出debug日志,开启会影响性能 } }
并在清单文件中声明:
<application android:name=".MyApplication"
2.在工具类中设置要创建的数据库的相关信息:
public class XUtil { static DbManager.DaoConfig daoConfig; //创建数据库 public static DbManager.DaoConfig getDaoConfig() { File file = new File(Environment.getExternalStorageDirectory() .getPath()); if (daoConfig == null) { daoConfig = new DbManager.DaoConfig() .setDbName("shop.db") .setDbDir(file) .setDbVersion(1) .setAllowTransaction(true) .setDbUpgradeListener(new DbManager.DbUpgradeListener() { @Override public void onUpgrade(DbManager db, int oldVersion, int newVersion) { } }); } return daoConfig; }
3.创建实体类JavaBean,并通过注解的方式生产数据库内的表
public class ShopCartDbInfo { @Column(name = "uid",isId=true,autoGen=true) private int uid; @Column(name="id") private int id; @Column(name="brand") private String brand; @Column(name="name") private String name; @Column(name="standard") private String standard; @Column(name="costPrice") private long costPrice; @Column(name="vipPrice") private long vipPirce; @Column(name="img") private String img; @Column(name="num") private int num; public int getUid() { return uid; } public void setUid(int uid) { this.uid = uid; }
注意点:
a.在类名上面加入@Table标签,标签里面的属性name的值就是以后生成的数据库的表的名字
b.实体bean里面的属性需要加上@Column标签,这样这个标签的name属性的值会对应数据库里面的表的字段。
c.实体bean里面的普通属性,如果没有加上@Column标签就不会在生成表的时候在表里面加入字段。
d.实体bean中必须有一个主键,如果没有主键,表以后不会创建成功,@Column(name=”id”,isId=true,autoGen=true)这个属性name的值代表的是表的主键的标识,isId这个属性代表的是该属性是不是表的主键,autoGen代表的是主键是否是自增长,如果不写autoGen这个属性,默认是自增长的属性。
b.实体bean里面的属性需要加上@Column标签,这样这个标签的name属性的值会对应数据库里面的表的字段。
c.实体bean里面的普通属性,如果没有加上@Column标签就不会在生成表的时候在表里面加入字段。
d.实体bean中必须有一个主键,如果没有主键,表以后不会创建成功,@Column(name=”id”,isId=true,autoGen=true)这个属性name的值代表的是表的主键的标识,isId这个属性代表的是该属性是不是表的主键,autoGen代表的是主键是否是自增长,如果不写autoGen这个属性,默认是自增长的属性。
4.在dao文件里做增删改查的方法,方便直接调用
public class ShopCartDao { DbManager.DaoConfig daoConfig = XUtil.getDaoConfig(); DbManager db = x.getDb(daoConfig); /** * 向购物车列表添加商品 * @param shoppingCartBean */ public void insert(ShoppingCartBean shoppingCartBean) { try { ShopCartDbInfo shopCartDbInfo = new ShopCartDbInfo(); shopCartDbInfo.setBrand(shoppingCartBean.getFabric()); db.save(shopCartDbInfo); //db.saveOrUpdate(shopCartDbInfo); } catch (DbException e) { e.printStackTrace(); } } }