美文网首页
Java™ ORM框架CDM教程 快速上手(一)

Java™ ORM框架CDM教程 快速上手(一)

作者: 懒得出风头 | 来源:发表于2018-12-24 18:00 被阅读0次

    CDM

    全称 common database manager, Java™ orm 框架。
    maven链接
    GitHub链接
    Sanen CDM 官方链接

    环境搭建

    maven环境

    只需在pom中添加(这里用的2.0.5版本,请以maven仓库最新版本为准)

    <!-- https://mvnrepository.com/artifact/online.sanen/cdm-core -->
        <dependency>
            <groupId>online.sanen</groupId>
            <artifactId>cdm-core</artifactId>
            <version>2.0.5</version>
        </dependency>
    

    非maven环境

    下载最新jar导入项目
    mhdt-common.jar
    cdm-api.jar
    cdm-core.jar
    cdm-template

    BootStrap

    全局引导器,用于控制CRUD的入口。

    工厂创建Bootstrap实例

    Bootstrap bootstrap = BootStrapFactoty.load(config->{
                config.setDriver(Driven.SQLITE);
                config.setUrl("jdbc:sqlite:test.sqlite");
            });
    

    BasicBean

    实体类映射基础接口

    public interface BasicBean {
        String primarykey();
    }
    

    只有一个待实现方法primarykey,返回对象表主键字段。

    package com.example.demo;
    
    import com.mhdt.annotation.NoInsert;
    
    import online.sanen.cdm.basic.BasicBean;
    
    public class User implements BasicBean {
    
        @NoInsert
        /** 插入操作时,忽略该字段(id) */
        int id;
    
        String name;
    
        String sex;
    
        public int getId() {
            return id;
        }
    
        public void setId(int id) {
            this.id = id;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public String getSex() {
            return sex;
        }
    
        public void setSex(String sex) {
            this.sex = sex;
        }
        
        @Override
        public String toString() {
            return "User [id=" + id + ", name=" + name + ", sex=" + sex + "]";
        }
    
        @Override
        public String primarykey() {
            return "id";
        }
    
    }
    

    自动建表

    bootstrap.query(new User()).create();
    

    插入

    创建User实例
    调用bootstrap.query(user).insert();

    SimpleRandom ran = new SimpleRandom();
        
        for(int i=0;i<10;i++) {
            User user = new User();
            user.setName(ran.nextLetter(4));
            user.setSex(ran.nextInt(1)==0?"男":"女");
            bootstrap.query(user).insert();
        }
    

    查询列表

    bootstrap.query(User.class).addEntry(User.class).list();

    addEntry方法: 设置实体类映射
    list方法:返回列表

    List<User> list = bootstrap.query(User.class).addEntry(User.class).list();
    System.out.println(list);
    

    主键操作

    查询

    bootstrap.query(User.class,1).find();
    

    删除

    bootstrap.query(User.class,1).delete();
    

    修改

    bootstrap.query(User.class,2).find()

    User.class: 实体类类型
    find方法: 主键查询

    User user = bootstrap.query(User.class,2).find();
    user.setName("Tom");
    bootstrap.query(user).update();

    相关文章

      网友评论

          本文标题:Java™ ORM框架CDM教程 快速上手(一)

          本文链接:https://www.haomeiwen.com/subject/zlozkqtx.html