hibernate怎么映射持久化类

1788
2024/1/18 15:22:30
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在Hibernate中,可以使用注解或XML配置文件两种方式来映射持久化类。

  1. 使用注解方式:

    • 在持久化类上使用@Entity注解,将该类标记为实体类。
    • 使用@Id注解标记主键属性。
    • 使用@Column注解标记属性,指定属性与数据库表中的列的映射关系。
    • 使用@OneToMany、@ManyToOne、@OneToOne、@ManyToMany等注解标记实体类之间的关联关系。
    • 使用@JoinTable、@JoinColumn等注解标记关联关系的细节。
    • 使用@Transient注解标记不需要持久化到数据库的属性。
    • 使用@Enumerated注解标记枚举类型的属性。

    示例代码如下:

    @Entity
    @Table(name = "student")
    public class Student {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        
        @Column(name = "name")
        private String name;
        
        @OneToMany(mappedBy = "student")
        private List<Course> courses;
        
        // 省略其他属性和方法
    }
    
  2. 使用XML配置文件方式:

    • 创建一个名为hibernate.cfg.xml的配置文件,配置数据库连接和其他Hibernate相关的配置。
    • 创建一个名为mapping.hbm.xml的XML文件,使用标签包裹映射信息。
    • 标签下,使用标签定义持久化类,并在其中使用等标签定义类的属性和关联关系。
    • 在hibernate.cfg.xml中使用标签引入mapping.hbm.xml文件。

    示例代码如下:

    <hibernate-mapping>
        <class name="com.example.Student" table="student">
            <id name="id" column="id">
                <generator class="identity"/>
            </id>
            <property name="name" column="name"/>
            <one-to-many name="courses" class="com.example.Course" mapped-by="student"/>
            <!-- 省略其他属性和关联关系的映射 -->
        </class>
    </hibernate-mapping>
    

以上是Hibernate映射持久化类的基本方式,具体的映射细节和配置可根据实际情况进行调整。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: hibernate和mybatis的区别是什么