• Android ORMapping库


    自己用Java的注解实现了Android SQLite的ORM库,之前写过XML的,不过感觉不是很稳定,效率、鲁棒性各方面都不太好,今天花了一下午的时间,补全了所有的注解、注释,生成了javadoc,写了样例程序,并发布到了Github上,地址是:https://github.com/Steven-Luo/AnnotationDao,感兴趣的可以试着用用,比之前纯手动实现SQLite数据库的操作简单了许多,可扩展性也较好,用法如下:

     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已经很好用了,但有几个图感觉还不太合意,最后决定自己画一个。其实主要是因为看了多看阅读上面的阅读时间曲线,觉得画得不错,所以我也就创新了一下,或者说山寨了一下,哈哈,效果如下图所示:

    等改天把注释写好了,也放到GitHub上去,好东西,大家要一起分享^_^

  • 相关阅读:
    kubernetes案例 tomcat+mysql
    elasticsearch+logstash+kibana部署
    elasticsearch集群部署以及head插件安装
    Rhel7.4系统部署cobbler
    部署Hadoop2.0高性能集群
    使用haproxy实现负载均衡集群
    nginx实现动静分离的负载均衡集群
    heartrbeat实现web服务器高可用
    keepalived+lvs
    LVS集群之IP TUN模式以及网站压力测试
  • 原文地址:https://www.cnblogs.com/stevenluo/p/3873748.html
Copyright © 2020-2023  润新知