• java中对象模型与数据库中的关系模型


    实体类还需要配置到hibernate.cfg.xml中,以便Hibernate初始化实体类与数据库表的映射关系。如果只配置了映射关系,而没有配置到hibernate.cfg.xml中,Hibernate仍然不会知道哪些类是实体类,因为Hibernate无法通过遍历所有的类来决定哪些是实体类。

    a.如果实体类是使用@注解配置的,需要用<mapping class=""/>配置,这样他们的对应关系在实体类上面已经使用了相应的注解,如:

    @Entity
        @Table(name = "product_attribute")
        public class ProductAttribute {
            @Id
            @GeneratedValue( strategy = GenerationType.AUTO)
            private Integer id;
            @ManyToOne(cascade = CascadeType.MERGE)
            @JoinColumn(name = "productId")
            private ProductInfoEntity productInfo;
            @ManyToOne(cascade = CascadeType.MERGE)
            @JoinColumn(name = "pro_attr_metaId")
            private ProductAttributeMetaEntity productAttributeMeta; 
            @Column(name = "value")
            private String value;  
     

    b.而如果是用XML文件配置的,则需要用<mapping resource=""/>配置XML配置文件。如:同时每一个对象模型(实体)都应有自己的配置文件,命名为:实体名.hbm.xml,最后将   实体名.hbm.xml引入到hibernate.cfg.xml配置文件中

    c.代码hibernate.cfg.xml

    1. # 在Hibernate中声明用@注解配置的实体类  
    2. <mapping class="com.helloweenvsfei.hibernate.bean.Department" />  
    3. <mapping class="com.helloweenvsfei.hibernate.bean.Employee" />  
    4.  
    5. # 在Hibernate中声明用XML配置的实体类  
    6. <mapping resource="com/helloweenvsfei/hibernate/bean/Event.hbm.xml" />  
    7. <mapping resource="com/helloweenvsfei/hibernate/bean/Cat.hbm.xml" /> 
  • 相关阅读:
    重温算法第一篇:冒泡排序
    服务器报警邮件发送到QQ邮箱,但是被系统拦截
    记录MongoDB常用查询
    一次 Mysql 字符集的报错,最后让我万马奔腾!!!
    Hbase 一次表异常,有一张表 无法count scan 一直显示重连
    spark编译安装 spark 2.1.0 hadoop2.6.0-cdh5.7.0
    有一些sql 是必须要做笔记的!!
    linux 修改openfiles
    在线HTTP POST/GET接口测试工具
    HBase 官方文档中文版
  • 原文地址:https://www.cnblogs.com/riasky/p/3372089.html
Copyright © 2020-2023  润新知