1、建 一个Teacher类:
public class Teacher {
private int id;
private String name;
private String title;
2、在数据库中建 teacher表
create table teacher(id int primary key,
name varcher(20),
title varchar(10));
3、引入与Annotation相关的jar包
windows---preferences-----java---User Libraries---hibernate----Add JARS---
(1)、hibernate-annotations-3.4.0.GA----hibernate-annotations.jar
(2)、hibernate-annotations-3.4.GA
lib--->-ejb3-persistence.jar
hibernate-commons-annotations.jar
共11个包
4、在Teacher.java下面的package com.bjsxt.hibernate.model;
@Entity
Entity是一个实体类,就意味着hibernate就可以帮着管起来,就 意味着跟数据库的某个表对应,如杲不写任何特殊的东西,就意味和它对应的数据库的那张表就叫teacher,如杲想知道数据库的表叫什么,可以加一个@table来指明
5、对主键进行注解@id[加在get方法上面]
@Id
public int getId(){
return id;
}
package com.bjsxt.hibernate.model;
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;
}
}
6、需要在hibernate.cfg.xml中告诉别人,有一个类加了映射是实体类。
<mapping class="com.bjsxt.hibernate.model.Teacher"/>
7、对TeacherTest.java:
package com.bjsxt.hibernate.model;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.AnnotationConfiguration;
import org.hibernate.cfg.Configuration;
public class TeacherTest {
public static void main(String[]args){
Teacher t=new Teacher();
t.setId(1);
t.setName("t");
t.setTitle("哦昂");
//开始拿到session
//首先要拿到configuration
Configuration cfg=new AnnotationConfiguration();
SessionFactory sf= cfg.configure().buildSessionFactory();
Session session=sf.openSession();
session.save(t);
// session.getTransaction().commit();
session.beginTransaction().commit();
session.close();
sf.close();
}
}
异常:
2 在myeclipse输入@时没有提示原因
这个需要配置一下工具的自动补全功能。一般默认的只有输入 . 的时候才能自动提示。配置方法:1. 打开MyEclipse,然后“window”→“Preferences”2. 选择“java”,展开,“Editor”,选择“Content Assist”。3. 选择“Content Assist”,然后看到右边,右边的“Auto-Activation”下面的“Auto Activation triggers for java”这个选项。其实就是指触发代码提示的就是“.”这个符号。4.“Auto Activation triggers for java”这个选项,在“.”后加@字母,然后“apply”,点击“OK”。
3 @Entityjavax.persistence.Entity报错Syntax error, annotations are only available if source level is 5.0
解决办法:
Project->Properties->Java Compiler->Compiler Compliance Level选择5.0或者以上的jdk版本
菜单条 ---"Windows" ----"preferneces"
在弹出对话框中 ,在左侧列表框中 选择 "JAVA" ---子菜单中 "compiler" ...
然后在右侧把 "Compiler compliance level" 设置成5.0以上 即可。