地址:https://github.com/LitePalFramework/LitePal
compile 'org.litepal.android:core:1.6.0'
1。main目录下新建assets目录,新建lite.xml文件:
<?xml version="1.0" encoding="utf-8" ?>
<litepal>
<dbname value="BookStore" ></dbname>
<version value="1"></version>
<list>
</list>
</litepal>
2。修改manifest文件,在application标签下增加:
android:name="org.litepal.LitePalApplication"
3。新建Book类:
public class Book extends DataSupport{
private int id;
private String author;
private double price;
private int pages;
private String name;
private String press;
public int getId(){
return id;
}
public void setId(int id){
this.id = id;
}
public String getAuthor(){
return author;
}
public void setAuthor(String author) {
this.author = author;
}
public double getPrice(){
return price;
}
public void setPrice(double price) {
this.price = price;
}
public int getPages(){
return pages;
}
public void setPages(int pages){
this.pages = pages;
}
public String getName(){
return name;
}
public void setName(String name){
this.name = name;
}
public String getPress(){
return press;
}
public void setPress(String press){
this.press = press;
}
}
4。把BOOK类映射到litepal中:
<list> <mapping class="com.lewanjiang.litepalt.Book" ></mapping> </list>
5。新建数据库:
Connector.getDatabase();
6。添加字段——修改book类,添加category表,新建category类,并在litepal中添加映射关系:
public class Category { private int id; private String categoryName; private int categoryCode; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getCategoryName() { return categoryName; } public void setCategoryName(String categoryName) { this.categoryName = categoryName; } public int getCategoryCode() { return categoryCode; } public void setCategoryCode(int categoryCode) { this.categoryCode = categoryCode; } }
<?xml version="1.0" encoding="utf-8" ?> <litepal> <dbname value="BookStore" ></dbname> <version value="2"></version> <list> <mapping class="com.lewanjiang.litepalt.Book" ></mapping> <mapping class="com.lewanjiang.litepalt.Category"></mapping> </list> </litepal>
7。添加数据:
Book book = new Book();
book.setName("The Da Vinci Code");
book.setAuthor("Dan Brown");
book.setPages(458);
book.setPrice(16.96);
book.setPress("Unknow");
book.save();
8。更新数据:
8.1刚添加即修改:
Book book = new Book(); book.setName("bob"); book.setAuthor("bob author"); book.setPrice(233); book.setPages(666); book.setId(1); book.save(); book.setPrice(10.99); book.save();
8.2从已添加的中修改:
book.setPrice(14.95); book.setPages(333); book.updateAll("name=? and author =?","bob","bob author");
9。删除数据:
DataSupport.deleteAll(Book.class, "price < ?", "15");
10。查询数据:
List<Book> books = DataSupport.findAll(Book.class);
for (Book book : books)
Log.d("MainAcitivity", "book name is " + book.getName());
List<Book> books1 = DataSupport.select("name","author","pages")
.where("pages>?","400")
.order("pages")
.limit(10)
.offset(10)
.find(Book.class);