詳解 hibernate mapping配置
每個hibernate只會啟動的時候引入一個文件,那就是:hibernate.cfg.xml
mapping需要我們在hibernate中引入,
<mapping resource="com/hibernate/test/hibernate_IP.xml"/><mapping class="com.hibernate.test.Student"/>
代碼片段:
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.hibernate.test"> <class name="IP_List" table="IP_LIST"> <id name="ip" column="Ip"> <generator class="native"></generator> </id> <property name="Status" column="Status"></property> </class> </hibernate-mapping>
class標簽 對應的name為Java實體類 table為表名;
id為主鍵 主鍵自增策略:<generator class="native"></generator> native會根據不同數據庫 采取不同的自增策略
<property>標簽對應數據庫中的字段 column
package com.hibernate.test;import javax.persistence.Entity;import javax.persistence.Id;import javax.persistence.Table;@Entity@Table(name="Student")public class Student { private int id; private String name; /** * id * * @return the id * @since CodingExample Ver(編碼范例查看) 1.0 */ @Id @GeneratedValue public int getId() { return id; } /** * * @param id * the id to set */ public void setId(int id) { this.id = id; } /** * name * * @return the name * @since CodingExample Ver(編碼范例查看) 1.0 */ @Column(name="name") public String getName() { return name; } /** * * @param name * the name to set */ public void setName(String name) { this.name = name; }}
實體類添加注解:@Entity 對應的表為@Table
主鍵為@ID 自增策略配置:@GeneratedValue
@Column 注解對應為數據庫中的字段
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答