亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

LitePal 開源數據庫框架學習(跟隨郭霖老師的學習)

2019-11-09 14:44:39
字體:
來源:轉載
供稿:網友
在android studio中添加dependdencies{compile‘org.litepal.android:core:1.3.2’

}

在app/src/main中添加assets文件夾,添加文件litepal.xml

<?xml version="1.0" encoding="utf-8"?><litepal>    <dbname value="BookStore"></dbname>    <version value="1"></version>    <list>        <mapping class="test.ban.com.test_litepal.Book"></mapping>    </list></litepal>添加Book類
public class Book {    PRivate int id;    private String author;    private double price;    private int pages;    private String name;    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;    }}記錄類路徑test.ban.com.test_litepal.Book

在Manifast中的application添加android:name="org.litepal.LitePalApplication"配置完成,編寫主代碼

 Button createDatabase = (Button) findViewById(R.id.btn_create_table);        createDatabase.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Connector.getDatabase();            }        });即可使用創建完成升級數據庫,添加表單等,只需要增加版本號<version value="2"></version>,然后修改類中的字段即可
 private String press;    public String getPress() {        return press;    }    public void setPress(String press) {        this.press = press;    }添加表:
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;    }}在litepal中添加即可:
<?xml version="1.0" encoding="utf-8"?><litepal>    <dbname value="BookStore"></dbname>    <version value="3"></version>    <list>        <mapping class="test.ban.com.test_litepal.Book"></mapping>        <mapping class="test.ban.com.test_litepal.Category"></mapping>    </list></litepal>插入數據也較為簡單
Button addDate= (Button) findViewById(R.id.btn_insert_table);        addDate.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Book book=new Book();                book.setName("壁紙碧水");                book.setAuthor("ban");                book.setPages(520);                book.setPress("yy");                book.setPrice(1314);                book.save();            }        });更新數據也較為簡單,直接使用DateSupport接口中的方法即可
 //更新數據        Button updateDate= (Button) findViewById(R.id.btn_update_table);        updateDate.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                Book book=new Book();//                book.setName("小河在流血");//                book.setAuthor("ban");//                book.setPages(123);//                book.setPress("標簽");//                book.setPrice(50);//                book.save();//                book.setPrice(20);//                book.save();                book.setPrice(15.66);                book.setPress("快樂時");                book.updateAll("name=? and author=?","小河在流血","ban");            }        });但需要注意的是,此框架中是直接設置了默認值的,使用updateAll()方法(所有的數據更新),是不可以使用上面的方式來set的,就是不能講數據設置為默認值,比如int類型的為0,所以Litepal提供了另一個setToDefault()方法,傳入列名就可以實現了
Book book=new Book();book.setToDefault("pages");book.updateAll();刪除數據也較為簡單,直接電筒DataSupport中的deleteAll()方法即可,再加上判斷語句
Button deleteDate = (Button) findViewById(R.id.btn_delete_table);        deleteDate.setOnClickListener(new View.OnClickListener() {            @Override            public void onClick(View v) {                DataSupport.deleteAll(Book.class, "price<?", "16");            }        });直接執行deleteAll()方法不指定約束條件,則是將整個表的數據刪除查詢,都是最麻煩的,使用Litepal就可以簡化這一部分的內容查詢所有數據:
List<Book> books = DataSupport.findAll(Book.class);                for (Book book : books) {                    Log.i(TAG, "name: " + book.getName());                    Log.i(TAG, "price: " + book.getPrice());                    Log.i(TAG, "author: " + book.getAuthor());                    Log.i(TAG, "press: " + book.getPress());                    Log.i(TAG, "pages: " + book.getPages());                }還有一些其他的方法
 //查詢第一行                Book firstBook = DataSupport.findFirst(Book.class);                //查詢最后一行                Book lastBook = DataSupport.findLast(Book.class);                List<Book> books = DataSupport.select("name", "author").find(Book.class);//                for (Book book : books) {//沒有查詢出的值為空(默認值)//                    Log.i(TAG, "name: " + book.getName());//                    Log.i(TAG, "price: " + book.getPrice());//                    Log.i(TAG, "author: " + book.getAuthor());//                    Log.i(TAG, "press: " + book.getPress());//                    Log.i(TAG, "pages: " + book.getPages());//                }                //倒序排列                List<Book> books2 = DataSupport.order("price desc").find(Book.class);                //限制                List<Book> books3 = DataSupport.limit(3).offset(1).find(Book.class);                //where 子句                List<Book> books4 = DataSupport.where("pages>?", "10").find(Book.class);若是想用原省的sql語句,也可以使用Cursor c=DataSupport.findBySQL("select * from Book where pages > ? and price < ?","400","20");


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产在线精品播放| 亚洲国产精品视频在线观看| 亚洲爱爱爱爱爱| 久久国产加勒比精品无码| 国产视频久久久久| 日韩一区在线视频| 国产精品免费小视频| 国产一区二区日韩| 91国语精品自产拍在线观看性色| 国产日韩精品在线播放| 欧美日韩一区二区免费视频| 亚洲国产古装精品网站| 福利一区视频在线观看| 亚洲美女动态图120秒| 欧美激情在线播放| 亚洲精品一区在线观看香蕉| 欧美国产日韩精品| 中文字幕视频一区二区在线有码| 国产欧美一区二区三区久久| 亚洲午夜激情免费视频| 色与欲影视天天看综合网| 精品久久久久久久久久久久久| 91免费在线视频网站| 精品久久久久久久久久国产| 久久99青青精品免费观看| 久久亚洲精品网站| 亚洲欧美精品在线| 亚洲激情中文字幕| 亚洲热线99精品视频| 成人免费大片黄在线播放| 欧美高清无遮挡| 国产精品老女人视频| 欧美极品少妇xxxxⅹ免费视频| 91夜夜揉人人捏人人添红杏| 最近2019年中文视频免费在线观看| 91手机视频在线观看| 欧美日韩一区二区免费在线观看| 国产免费亚洲高清| 亚洲午夜精品久久久久久性色| 久久久久国产一区二区三区| 国产精品美女久久久久av超清| 日韩亚洲一区二区| 欧美视频一区二区三区…| 日韩av网站导航| 国产亚洲aⅴaaaaaa毛片| 久久久亚洲福利精品午夜| 97成人在线视频| 国产精品成熟老女人| 国产精品久久久久av| 国产精品久久久久久av下载红粉| 中文字幕亚洲综合| 亚洲成人激情小说| 欧美多人乱p欧美4p久久| 91在线观看免费高清完整版在线观看| 久久久免费在线观看| 国产欧美精品日韩精品| 国产欧美va欧美va香蕉在| 欧美日韩电影在线观看| 国产精品美乳一区二区免费| 亚洲精品av在线| 国产一区二区三区视频| 亚洲第一综合天堂另类专| 国产精品亚洲一区二区三区| 日韩精品极品在线观看播放免费视频| 日韩欧美aⅴ综合网站发布| 欧美午夜女人视频在线| 欧美www视频在线观看| 中文字幕亚洲欧美日韩高清| 亚洲精品视频免费在线观看| 俺去亚洲欧洲欧美日韩| 日韩不卡中文字幕| 久久九九国产精品怡红院| xvideos国产精品| 色综合男人天堂| 久久久久国产视频| 成人欧美一区二区三区在线湿哒哒| 免费不卡在线观看av| 日韩在线小视频| 国产精品揄拍500视频| 精品国产31久久久久久| 综合136福利视频在线| 亚洲美女av在线播放| 精品久久久久久久久国产字幕| 欧美精品久久久久久久久久| 97久久精品人人澡人人爽缅北| 欧美激情中文字幕在线| 久青草国产97香蕉在线视频| 国外成人性视频| 91最新在线免费观看| 日韩中文字幕国产精品| 欧美激情2020午夜免费观看| 国产精品久久久久久久久久99| 色午夜这里只有精品| 欧美日韩黄色大片| 国产啪精品视频| 国产精品99久久久久久www| 在线日韩日本国产亚洲| 国产精品自拍小视频| 久久久在线免费观看| 欧美肥老太性生活视频| 国产精品扒开腿做爽爽爽的视频| 国产婷婷色综合av蜜臀av| 国产亚洲视频在线观看| 91成人在线播放| 国产丝袜一区二区| 色视频www在线播放国产成人| 日韩在线观看免费网站| 国产精品你懂得| 日韩av在线网站| 17婷婷久久www| 日韩中文字幕精品| 精品久久久久久久久久久久久| 国产精品视频xxxx| 国产精品丝袜白浆摸在线| 午夜精品美女自拍福到在线| 欧美亚洲另类视频| 色哟哟网站入口亚洲精品| 亚州精品天堂中文字幕| 日本亚洲欧洲色| 亚洲精品短视频| 青青在线视频一区二区三区| 亚洲男人7777| 日韩国产高清视频在线| 青草青草久热精品视频在线网站| 久久99青青精品免费观看| 欧美日韩国产123| 国产成人极品视频| 91成人性视频| 免费99精品国产自在在线| 国产精品久久网| 亚洲国产精品久久久久秋霞蜜臀| 亚洲激情视频网| 日韩中文在线中文网在线观看| 久久精品成人一区二区三区| 91成人性视频| 97久久久免费福利网址| 中文字幕亚洲天堂| 亚洲欧美精品在线| 欧美疯狂xxxx大交乱88av| 欧美最猛性xxxxx亚洲精品| 亚洲国产欧美日韩精品| 免费91麻豆精品国产自产在线观看| 一区二区三区精品99久久| 亚洲高清色综合| 国产精品视频白浆免费视频| www亚洲精品| 欧美裸体视频网站| 亚洲欧美精品伊人久久| 欧美性猛交xxxx偷拍洗澡| 欧美黑人巨大xxx极品| 91免费看视频.| 国产精品吹潮在线观看| 国产亚洲欧美aaaa| 亚洲人在线观看| 97精品久久久| 主播福利视频一区| 91久久精品国产91久久| 国产精品久久久久av免费| 精品偷拍一区二区三区在线看| 亚洲精品中文字幕av| 精品久久久久久中文字幕一区奶水| 国产成人小视频在线观看| 黑人精品xxx一区一二区| 欧美日韩国产999|