zoukankan      html  css  js  c++  java
  • hibernate_annotation字段映射位置

       @Id
        private int id;
        private String name;
        private String wifeName;
        private Date birthDate;
        //Title是Enum(枚举)类型
        private Title  title;
     ***********************************   
    
        @Id
        public int getId() {
            return id;
        }

    在hibernate里,映射@Id可以放在成员变量上,完全可以。

    实际工作中,有人放在成员变量上,看起来更集中,更清晰。但是这样放,已经破坏了java的面向对象的的封装性。因为平时我们写javaBean时,属性field都是private的,私有的。

    如果在私有的上写上注解,这时相当于hibernate可以直接访问你的私有的成员变量,java的反射机制就能够做到。但是从设计的角度绝不推荐这样干,因为本身我们把他设成私有的就是不希望别人直接就伸进我们兜里来拿我们这些私有的东西。比如,本来你把你家的存折放进你兜里,加了把锁,结果hibernate二话不说直接把手伸进你兜里把存折拿出来了,不合适,所以应该建议把注解写在get方法上。不应该直接去访问private变量,更别提hibernate直接去修改你的私有变量。这样就更不爽了。直接二话不说,把你存折原来有10000,直接给你改成1块。

    而且要保持属性名和set、get方法一致。

  • 相关阅读:
    Chapter 1 First Sight——8
    Chapter 1 First Sight——7
    Chapter 1 First Sight——6
    Chapter 1 First Sight——5
    PAT1012
    Chapter 1 First Sight——4
    Chapter 1 First Sight——3
    需要注意的subList方法!和substring是不一样的!从源码解释他们的不同。
    餐桌项目删除餐桌
    addEventListener()绑定事件的对象方法。
  • 原文地址:https://www.cnblogs.com/lihaoyang/p/4849234.html
Copyright © 2011-2022 走看看