public interface OperateInterface {
public Session session=null;
public void save (Object object);
public void update (Object object);
public void delete (Object object);
}
public class Operater implements OperateInterface {
public Session session=null;
public Operater (){
Configuration config =new Configuration().configure ();
SessionFactory factory=config.buildSessionFactory();
this.session=factory.openSession();
}
public void save(Object object) {
// TODO Auto-generated method stub
Transaction tran=this.session.beginTransaction();
this.session.save(object);
tran.commit();
this.session.flush();
}
}
<hibernate-mapping></hibernate-mapping> 映射h b.xml文件
...... prop
- xml version="1.0" encoding="utf-8"?>
- "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <hibernate-mapping>
- <class name="com.many.vo.Classstu" table="CLASSSTU" schema="TEST">
- <id name="id" type="java.lang.Long">
- <column name="ID" precision="22" scale="0" />
- <generator class="increment" />
- id>
- <property name="classname" type="java.lang.String">
- <column name="CLASSNAME" length="20" />
- property>
- <one-to-one name="stu" class="com.many.vo.Stu" >one-to-one>
- class>
- hibernate-mapping>
- ========================
- package com.many.vo;
- /**
- * Classstu generated by MyEclipse Persistence Tools
- */
- public class Classstu implements java.io.Serializable {
- // Fields
- private Long id;
- private String classname;
- private Stu stu;
- // Constructors
- public Stu getStu() {
- return stu;
- }
- public void setStu(Stu stu) {
- this.stu = stu;
- }
- /** default constructor */
- public Classstu() {
- }
- /** full constructor */
- public Classstu(String classname) {
- this.classname = classname;
- }
- // Property accessors
- public Long getId() {
- return this.id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public String getClassname() {
- return this.classname;
- }
- public void setClassname(String classname) {
- this.classname = classname;
- }
- }
- =============================
- package com.many.vo;
- /**
- * Stu generated by MyEclipse Persistence Tools
- */
- public class Stu implements java.io.Serializable {
- // Fields
- private Long id;
- private String name;
- private Long classid;
- private Classstu classStu;
- // Constructors
- /** default constructor */
- public Stu() {
- }
- /** full constructor */
- public Stu(String name, Long classid) {
- this.name = name;
- this.classid = classid;
- }
- // Property accessors
- public Long getId() {
- return this.id;
- }
- public void setId(Long id) {
- this.id = id;
- }
- public String getName() {
- return this.name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public Long getClassid() {
- return this.classid;
- }
- public void setClassid(Long classid) {
- this.classid = classid;
- }
- public Classstu getClassStu() {
- return classStu;
- }
- public void setClassStu(Classstu classStu) {
- this.classStu = classStu;
- }
- }
- ==============================
- package com.many.services;
- import java.util.HashSet;
- import org.hibernate.HibernateException;
- import com.many.dao.Operater;
- import com.many.vo.*;
- public class Test {
- /**
- * @param args
- */
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- Stu stu = new Stu();
- Classstu classstu = new Classstu();
- stu.setName("s张华");
- stu.setClassid(new Long(13566));
- stu.setId(new Long(8));
- stu.setClassStu(classstu);
- classstu.setClassname("s246-班");
- classstu.setStu(stu);
- stu.setClassStu(classstu);
- Room r = new Room ();
- r.setAddress("新港西路34号");
- Users u = new Users();
- u.setName("杨晓东");
- u.setRoom(r);
- A a = new A ();
- B b= new B ();
- a.setLove("唱歌");
- b.setName("李华");
- b.setPhone(new Long (12364));
- Operater o = new Operater();
- try {
- o.save(a);
- o.save(b);
- o.session.close();
- System.out.println("transaction success");
- } catch (HibernateException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- }
- }
erty <property name="classid" type="java.lang.Long">
<column name="CLASSID" precision="22" scale="0"></column>
one-to-one name="classStu" class="com.many.vo.Classstu" cascade="all"<one-to-one class="com.many.vo.Classstu" name="classStu" cascade="all"></one-to-one></property>
<one-to-one class="com.many.vo.Classstu" name="classStu" cascade="all"></one-to-one>
----实体类---
package com.many.vo;
/**
* Stu generated by MyEclipse Persistence Tools
*/
public class Stu implements java.io.Serializable {
// Fields
private Long id;
private String name;
private Long classid;
private Classstu classStu;
// Constructors
/** default constructor */
public Stu() {
}
/** full constructor */
public Stu(String name, Long classid) {
this.name = name;
this.classid = classid;
}
// Property accessors
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
public Long getClassid() {
return this.classid;
}
public void setClassid(Long classid) {
this.classid = classid;
}
public Classstu getClassStu() {
return classStu;
}
public void setClassStu(Classstu classStu) {
this.classStu = classStu;
}
}
package com.many.vo;
/**
* Classstu generated by MyEclipse Persistence Tools
*/
public class Classstu implements java.io.Serializable {
// Fields
private Long id;
private String classname;
private Stu stu;
// Constructors
public Stu getStu() {
return stu;
}
public void setStu(Stu stu) {
this.stu = stu;
}
/** default constructor */
public Classstu() {
}
/** full constructor */
public Classstu(String classname) {
this.classname = classname;
}
// Property accessors
public Long getId() {
return this.id;
}
public void setId(Long id) {
this.id = id;
}
public String getClassname() {
return this.classname;
}
public void setClassname(String classname) {
this.classname = classname;
}
}
------测试类层 -------
package com.many.services;
import org.hibernate.HibernateException;
import com.many.dao.Operater;
import com.many.vo.Classstu;
import com.many.vo.Stu;
public class Test {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Stu stu = new Stu();
Classstu classstu = new Classstu();
stu.setName("张华");
stu.setClassid(new Long(13566));
stu.setClassStu(classstu);
// classstu.setClassname("246-班");
classstu.setStu(stu);
stu.setClassStu(classstu);
Operater o = new Operater();
try {
o.save(stu);
o.session.close();
System.out.println("transaction success");
} catch (HibernateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
-------------此为典型的一对一的关系-----------