Entité de données (Entité)


Annotation d'entité de données
  • @Entité : déclare une classe en tant qu'objet d'entité de données ;

    valeur : nom de l'entité (nom de la table de base de données), la valeur par défaut est le nom de la classe actuelle

    @Entity("tb_demo")
    public class Demo {
        //...
    }
  • ;
  • @ Id : déclare un membre de classe comme clé primaire ;

    aucun paramètre, utilisé avec l'annotation @Property ;

    name : implémente le nom de l'attribut, le nom du membre actuel est utilisé par défaut ;
    autoincrement : s'il s'agit d'une croissance automatique, la valeur par défaut est false
    sequenceName : nom de séquence, adapté aux bases de données comme Oracle, utilisé avec le paramètre autoincrement ; ;
  • nullable : autorisé à être vide, la valeur par défaut est vraie ;

    unsigned : s'il est non signé, la valeur par défaut est false

    length : la longueur des données, la valeur par défaut est 0 pour aucune limite ; décimales, la valeur par défaut 0 n'est pas de décimales ;

    type : type de données, la valeur par défaut est Type.FIELD.VARCHAR

    @Entity("tb_demo")
    public class Demo {
    
        @Id
        @Property
        private String id;
    
        public String getId() {
            return id;
        }
    
        public void setId(String id) {
            this.id = id;
        }
    }

    @PK : déclare une classe en tant qu'objet clé primaire composite d'un certaine entité de données ;

    aucun paramètre ;

    @Entity("tb_user")
    public class User {
    
        @Id
        @Property
        private String id;
    
        @Property(name = "user_name",
                  nullable = false,
                  length = 32)
        private String username;
    
        @Property(name = "age",
                  unsigned = true,
                  type = Type.FIELD.INT)
        private Integer age;
    
        // 省略Get/Set方法...
    }
  • @ Lecture seule : Déclarez un membre comme attribut en lecture seule, qui sera ignoré lors de la mise à jour de l'entité de données ; utilisé avec l'annotation @Property ;

    @PK
    public class UserExtPK {
    
        @Property
        private String uid;
    
        @Property(name = "wx_id")
        private String wxId;
    
        // 省略Get/Set方法...
    }
    
    @Entity("tb_user_ext")
    public class UserExt {
    
        @Id
        private UserExtPK id;
    
        @Property(name = "open_id",
                  nullable = false,
                  length = 32)
        private String openId;
    
        // 省略Get/Set方法...
    }
    @Indexes : Déclare un ensemble d'entités de données Index
  • @Index : déclare l'index d'une entité de données

    @Comment : commentaire ; content;
    @Default : spécifie une valeur par défaut pour un attribut de membre ou un paramètre de méthode ;
  • En regardant Avec autant d'annotations, trouvez-vous difficile d'écrire des entités ? Ne vous inquiétez pas, le framework fournit une méthode ? pour générer automatiquement des entités, regardez vers le bas :)
  • Remarque

     : Certaines des annotations ou paramètres d'annotation ci-dessus sont destinés aux fonctionnalités futures. La création de structures de tables de base de données (et de fichiers de script SQL) directement via des objets d'entité peut être ignorée pour le moment ;