hibernate.cfg.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>
<session-factory>
<property name="myeclipse.connection.profile">Oracle Conn</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:MLDN</property>
<property name="connection.username">root</property>
<property name="connection.password">rockie</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="show_sql">true</property>
<mapping resource="org/lxh/hibernate/Person.hbm.xml" />
</session-factory>
</hibernate-configuration>
Person.hbm.xml
<?xml version="1.0" encoding='UTF-8'?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
<!-- DO NOT EDIT: This is a generated file that is synchronized -->
<!-- by MyEclipse Hibernate tool integration. -->
<hibernate-mapping package="org.lxh.hibernate">
<class name="Person" table="PERSON">
<id name="id" column="ID" type="int">
<generator class="assigned" />
</id>
<component name="name" class="org.lxh.hibernate.Name">
<property name="firstname" column="FIRSTNAME" type="string" not-null="true" />
<property name="lastname" column="LASTNAME" type="string" not-null="true" />
</component>
<component name="contact" class="org.lxh.hibernate.Contact">
<property name="address" column="ADDRESS" type="string" not-null="true" />
<property name="zipcode" column="ZIPCODE" type="string" not-null="true" />
<property name="tel" column="TEL" type="string" />
</component>
</class>
</hibernate-mapping>
Person.java
package org.lxh.hibernate;
public class Person {
// 在本类中要包含Name和Contact对象
private int id ;
private Name name ;
private Contact contact ;
public Contact getContact() {
return contact;
}
public void setContact(Contact contact) {
this.contact = contact;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public Name getName() {
return name;
}
public void setName(Name name) {
this.name = name;
}
}
Name.java
package org.lxh.hibernate;
public class Name {
private String firstname ;
private String lastname ;
public String getFirstname() {
return firstname;
}
public void setFirstname(String firstname) {
this.firstname = firstname;
}
public String getLastname() {
return lastname;
}
public void setLastname(String lastname) {
this.lastname = lastname;
}
}
Contact.java
package org.lxh.hibernate;
public class Contact {
private String address ;
private String zipcode ;
private String tel ;
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public String getTel() {
return tel;
}
public void setTel(String tel) {
this.tel = tel;
}
public String getZipcode() {
return zipcode;
}
public void setZipcode(String zipcode) {
this.zipcode = zipcode;
}
}
PersonOperate.java
package org.lxh.hibernate;
import java.util.List;
import org.hibernate.Query;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class PersonOperate {
private Session session ;
public PersonOperate()
{
Configuration config = new Configuration().configure() ;
SessionFactory factory = config.buildSessionFactory() ;
this.session = factory.openSession() ;
}
// 测试增加操作
public void insert(Person p)
{
// 将数据存放到数据库之中
this.session.save(p) ;
// 事务提交
this.session.beginTransaction().commit() ;
}
// 取得全部数据
public List queryAll()
{
String hql = "FROM Person as p" ;
Query q = this.session.createQuery(hql) ;
List l = q.list() ;
return l ;
}
}
TestDemo.java
package org.lxh.hibernate;
import java.util.Iterator;
import java.util.List;
public class TestDemo {
/**
* @param args
*/
public static void main(String[] args) {
// TODO 自动生成方法存根
PersonOperate po = new PersonOperate() ;
/*
Person p = new Person() ;
Name n = new Name() ;
Contact c = new Contact() ;
p.setId(1) ;
n.setFirstname("李") ;
n.setLastname("四") ;
c.setAddress("www") ;
c.setZipcode("10000") ;
c.setTel("666666") ;
p.setName(n) ;
p.setContact(c) ;
po.insert(p) ;
*/
List l = po.queryAll() ;
Iterator iter = l.iterator() ;
while(iter.hasNext())
{
Person p = (Person)iter.next() ;
System.out.println("ID --> "+p.getId()) ;
System.out.println("FIRSTNAME --> "+p.getName().getFirstname()) ;
System.out.println("LASTNAME --> "+p.getName().getLastname()) ;
System.out.println("ADDRESS --> "+p.getContact().getAddress()) ;
System.out.println("ZIPCODE --> "+p.getContact().getZipcode()) ;
System.out.println("TEL --> "+p.getContact().getTel()) ;
System.out.println("-------------------------------------------------") ;
}
}
}