Android ORMapping庫

本身用Java的註解實現了Android SQLite的ORM庫,以前寫過XML的,不過感受不是很穩定,效率、魯棒性各方面都不太好,今天花了一下午的時間,補全了全部的註解、註釋,生成了javadoc,寫了樣例程序,併發布到了Github上,地址是:https://github.com/Steven-Luo/AnnotationDao,感興趣的能夠試着用用,比以前純手動實現SQLite數據庫的操做簡單了許多,可擴展性也較好,用法以下:java

 1 //實體類
 2 @Table(name = "dog")
 3 public class Dog {
 4     private boolean alive;
 5     private int id;
 6     private String name;
 7 
 8     public Dog() {
 9 
10     }
11 
12     public Dog(boolean alive, String name) {
13         this.alive = alive;
14         this.name = name;
15     }
16 
17     @Id(name = "id")
18     @Column(name = "id", type = DataType.Integer)
19     public int getId() {
20         return id;
21     }
22 
23     @Column(name = "name", type = DataType.Varchar, length = 20)
24     public String getName() {
25         return name;
26     }
27 
28     @Column(name = "alive", type = DataType.Boolean)
29     public boolean isAlive() {
30         return alive;
31     }
32 
33     public void setAlive(boolean alive) {
34         this.alive = alive;
35     }
36 
37     public void setId(int id) {
38         this.id = id;
39     }
40 
41     public void setName(String name) {
42         this.name = name;
43     }
44 }
45 
46 //添加
47 AnnotationDao dao = new AnnotationDao(this, Dog.class);
48 
49 String name = "dog1";
50 boolean alive = true;
51 
52 Dog dog = new Dog(alive, name);
53 dao.insert(dog);
54 
55 //查找
56 //列出全部對象
57 List list = dao.list();
58 //根據ID查詢
59 dao.query(3);
60 
61 //刪除
62 dao.delete(dog);
63 
64 //更新,更新時須要保證id字段跟數據庫中的值是對應的,也就是以前調用list或query取出來的
65 dog.setName("dog2");
66 dao.update(dog);

這幾天作一個項目,其中須要畫一些曲線,雖然AChartEngine已經很好用了,但有幾個圖感受還不太合意,最後決定本身畫一個。其實主要是由於看了多看閱讀上面的閱讀時間曲線,以爲畫得不錯,因此我也就創新了一下,或者說山寨了一下,哈哈,效果以下圖所示:git

等改天把註釋寫好了,也放到GitHub上去,好東西,你們要一塊兒分享^_^github

相關文章
相關標籤/搜索