【Hibernate】入門搭建之Annotation


在Hibernate中使用Annotation的頻率要比XML高的多。


在XML的基礎上要添加如下jar包:

  hibernate-annotations-3.4.0.GA/hibernate-annotations.jar

  hibernate-annotations-3.4.0.GA/lib/ejb3-persistence.jar

  hibernate-annotations-3.4.0.GA/lib/hibernate-commons-annotations.jar


一、不用再寫實體映射文件,而是直接把註解寫在實體Bean上,代碼如下:

    

package com.ycao.bean;

import javax.persistence.Entity;
import javax.persistence.Id;

@Entity
public class Teacher {

	private int id;
	
	private String name;
	
	private String title;  //職稱

	@Id
	public int getId() {
		return id;
	}

	public void setId(int id) {
		this.id = id;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}
}

二、在hibernate.cfg.xml文件中由原來的

      

 <!-- xml方式配置 -->
        <mapping resource="com/ycao/bean/Student.hbm.xml"/>
換成如下寫法

 <!-- annotation方式配置 -->
        <mapping class="com.ycao.bean.Teacher"/>

三、測試文件中不再寫實例化普通的Configuration ,而是通過如下方式來實例化  Configuration cfg = new  AnnotationConfiguration();

    

package com.util;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;

import com.ycao.bean.Student;
import com.ycao.bean.Teacher;

public class TestTeacher {
	
	public static void main(String[] args) {
		
		Teacher t = new Teacher();
		  t.setName("teacher");
		  t.setTitle("中級");
			
	  Configuration cfg = new  AnnotationConfiguration();
	  
	  SessionFactory sessionFactory = cfg.configure().buildSessionFactory();  //創建SessionFactory
	  
	  Session session = sessionFactory.openSession();   //創建hibernate  session
	  
	  //所有的操作都要放在一個事務裏面
	  session.beginTransaction();
	  
	  session.save(t);
	  
	  session.getTransaction().commit();  //提交事務管理
	  
	  session.clear();
	  
	  sessionFactory.close();
	}

}

四、截圖如下


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章