溫馨提示×

hibernate怎么映射持久化類

小億
94
2024-01-11 15:22:30
欄目: 編程語言

在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映射持久化類的基本方式,具體的映射細節和配置可根據實際情況進行調整。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女