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">
<hibernate-configuration>
<session-factory>
<!-- Database connection settings -->
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:XE</property>
<property name="hibernate.connection.username">test</property>
<property name="hibernate.connection.password">test</property>
<!-- SQL dialect -->
<property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<!-- Echo all executed SQL to stdout -->
<property name="show_sql">true</property>
<mapping resource="student.hbm.xml"/>
<mapping resource="address.hbm.xml"/>
</session-factory>
</hibernate-configuration>
student.hbm.xml :
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="Student" table="STUDENT">
<id name="sid" column="SID">
<generator class="increment" />
</id>
<property name="snm" column="SNAME" type="java.lang.String"/>
</class>
</hibernate-mapping>
address.hbm.xml :
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="Address" table="ADDRS">
<id name="id" column="ID" type="java.lang.Integer">
<generator class="foreign">
<param name="property">parent</param>
</generator>
</id>
<property name="hno" column="HNO" type="java.lang.Integer"/>
<property name="city" column="CITY" type="java.lang.String"/>
<one-to-one name="parent" class="Student" cascade="all"></one-to-one>
</class>
</hibernate-mapping>
Address.java :
/**
* @author Mallik
*
*/
public class Address
{
/*
* DataMembers Declaration
*/
private Integer id;
private Integer hno;
private String city;
private Student parent;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getHno() {
return hno;
}
public void setHno(Integer hno) {
this.hno = hno;
}
public Student getParent() {
return parent;
}
public void setParent(Student parent) {
this.parent = parent;
}
public String getCity() {
return city;
}
public void setCity(String city) {
this.city = city;
}
}
Student.java :
/**
* @author Mallik
*
*/
//parent pojo class
public class Student {
/*
* DataMembers Declaration
*/
private int sid;
private String snm;
//setters&getters
public int getSid() {
return sid;
}
public void setSid(int sid) {
this.sid = sid;
}
public String getSnm() {
return snm;
}
public void setSnm(String snm) {
this.snm = snm;
}
}
Test.java :
/**
* @author Mallik
*
*/
import java.util.*;
import org.hibernate.cfg.*;
import org.hibernate.*;
//one-to-one Application
public class Test {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
System.out.println("nnnnnnnnnnnnnnn");
//Session Object creation
Session ses = new Configuration().configure().buildSessionFactory()
.openSession();
Student s = new Student();
s.setSnm("kiran");
Address a = new Address();
a.setId(12);
a.setCity("hyd");
a.setHno(18);
a.setParent(s);
Transaction transaction = null;
try {
transaction = ses.beginTransaction();
ses.save(a);
transaction.commit();
System.out.println("okkkkkkkkkkk");
} catch (Exception e) {
e.printStackTrace();
System.out.println(e);
if (transaction != null) {
transaction.rollback();
}
} finally
{
ses.close();
}
}
}
No comments:
Post a Comment