1.进入OrmLite官网下载四个jar包(http://ormlite.com/releases/)
b.android包 ormlite-android-4.48-sources.jar ormlite-android-4.48.jar
2.OrmLite的基本用法
DatabaseHelper 类
public class DatabaseHelper extends OrmLiteSqliteOpenHelper { private static final String dataName="express-seacher.db"; private static DatabaseHelper instance; private Map<String,Dao> daos=new HashMap<>(); // 保存所有的dao 每张表对于一个dao private DatabaseHelper(Context context) { super(context, dataName, null, 1); } public static synchronized DatabaseHelper getDataHelper(Context context) { context = context.getApplicationContext(); if (instance == null) { synchronized (DatabaseHelper.class) { if (instance == null) instance = new DatabaseHelper(context); } } return instance; } // 更加反射得到 dao public synchronized Dao getDao(Class clazz)throws SQLException { Dao dao=null; String name= clazz.getSimpleName(); if (daos.containsKey(name)){ dao=daos.get(name); } if(dao==null){ dao=super.getDao(clazz); daos.put(name,dao); } return dao; } @Override public void onCreate(SQLiteDatabase database, ConnectionSource connectionSource) { try { TableUtils.createTableIfNotExists(connectionSource, SeachNow.class); } catch (SQLException e) { e.printStackTrace(); } } @Override public void onUpgrade(SQLiteDatabase database, ConnectionSource connectionSource, int oldVersion, int newVersion) { try { TableUtils.dropTable(connectionSource, SeachNow.class, true); } catch (SQLException e) { e.printStackTrace(); } } @Override public void close() { super.close(); for (String key : daos.keySet()) { Dao dao = daos.get(key); dao = null; } } }SeacherNowDao(业务逻辑)private Context context; private Dao<SeachNow,Integer> seachDao; private DatabaseHelper helper; public SeacherNowDao(Context context){ try { helper=DatabaseHelper.getDataHelper(context); seachDao =helper.getDao(SeachNow.class); } catch (SQLException e) { e.printStackTrace(); } }// 获取所有的记录 public List<SeachNow> getSeachNows(){ List<SeachNow> list=null; try { list =seachDao.queryForAll(); } catch (SQLException e) { e.printStackTrace(); } return list; }SeachNow
@DatabaseTable(tableName = "tb_seachnow") public class SeachNow implements Serializable { @DatabaseField(generatedId = true) private int seacheNowId; @DatabaseField(columnName = "number") private String expressNumber; @DatabaseField(columnName = "companyname") private String companyName; public String getExpressNumber() { return expressNumber; } public void setExpressNumber(String expressNumber) { this.expressNumber = expressNumber; } public String getCompanyName() { return companyName; } public void setCompanyName(String companyName) { this.companyName = companyName; } public int getSeacheNowId() { return seacheNowId; } public void setSeacheNowId(int seacheNowId) { this.seacheNowId = seacheNowId; } }