首页 > 代码库 > Hiberate HelloWorld入门

Hiberate HelloWorld入门

通过两种方式来创建项目,一种是用xml方式来描述映射关系,一种是用Annation方式来进行描述

1 建立新java 项目,名为hibernate_0100_HelloWorld2 学习建User-library-hibernate,并加入相应的jar包  a) 项目右键-buildpath-configure build path-add library—  b) 选择User-library,在其中新建 libraray,命名为 hibernate  c) 在该library中加入hibernate所需jar包    i. hibernate core    ii. lib/required下所有jar包    iii. slf-nop jar3 引入mysql的JDBC驱动包4 在mysql中建立对应的数据库以及表  a) create database hibernate;  b) use hibernate;  c) create table Student (id int primary key, namevarchar(20), age int);5 建立hibernate 配置文件hibernate.cfg.xml  a) 从参考文档中copy  b) 修改对应的数据库连接  c) 注释掉暂时用不上的内容
   <mapping resource="com/lai/hiberte/model/Student.hbm.xml"/>
6	建立Student 类(属性,getter方法和setter方法)7	建立Student 映射文件 Student.hbm.xml (Id是什么,

<hibernate-mapping package="com.lai.hiberte.model"> 指明包

<class name="Student" table="Student">  指明表名,类名

<id name="id">  id这个字段就是primary key,主键的意思

</id>

<property name="name"/>

<property name="age"/>

</class>

</hibernate-mapping>

8  将映射文件加入到hibernate.cfg.xml中  a)	参考文档
====================================
TestClass:

public class TestClass {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Student s = new Student();
s.setId(1);
s.setAge(22);
s.setName("laichunbin");

Configuration cfg = new Configuration();
SessionFactory sf = cfg.configure().buildSessionFactory();
Session session = sf.openSession();
session.beginTransaction();
session.save(s);
session.getTransaction().commit();
session.close();
sf.close();

}

}

#######################

Annation版

Annation版很简单,比手动写xml文件方便多了

在类的前面加上,@Entity ,在主键的getter方法前面加上@Id,需要引入两个类

(JPA,HIBERATE)

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

/** *  */import javax.persistence.Entity;import javax.persistence.Id;/** * @author laicb *  */@Entitypublic class Teacher {	int id;	String name;	String title;    	@Id	public int getId() {		return id;	}	public String getName() {		return name;	}	public String getTitle() {		return title;	}	public void setId(int id) {		this.id = id;	}	public void setName(String name) {		this.name = name;	}	public void setTitle(String title) {		this.title = title;	}}

加上@Entriy,@Id就做好映射了,可以直接使用,不过在New Configuration的时候使用AnnationConfiguration

    public static void main(String[] args) {        // TODO Auto-generated method stub        Teacher s = new Teacher();        s.setId(1);        s.setName("laichunbin");        s.setTitle("assistant professor");                Configuration cfg = new AnnotationConfiguration();        SessionFactory sf =  cfg.configure().buildSessionFactory();        Session session = sf.openSession();        session.beginTransaction();        session.save(s);        session.getTransaction().commit();        session.close();        sf.close();    }

 Tips:

  @不给提示,在preference-Content Edit -annotinon for java (.,@)就可以。