import java.util.Date;
import org.hibernate.Session;
import org.hibernate.Transaction;
public class SimpleRetrieveTest
{
public static void main(String[] args)
{
HibernateUtil.setup("create table EVENTS ( EVENT_ID int, EVENT_DATE date,title VARCHAR);");
// hibernate code start
Session session = HibernateUtil.currentSession();
Transaction tx = session.beginTransaction();
Event theEvent = new Event();
theEvent.setTitle("My Event");
theEvent.setDate(new Date());
session.save(theEvent);
tx.commit();
HibernateUtil.closeSession();
HibernateUtil.sessionFactory.close(); // saved then retrieve it
session = HibernateUtil.currentSession();
tx = session.beginTransaction();
Event e = (Event)session.get(Event.class, new Long(1));
System.out.println(e);
tx.commit();
HibernateUtil.closeSession();
HibernateUtil.sessionFactory.close();
// hibernate code end
HibernateUtil.checkData("select * from events;");
}
}
< ? 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="Event" table="EVENTS" >
< id name="id" column="EVENT_ID" >
< generator class="increment" >
< /id >
< property name="date" type="timestamp" column="EVENT_DATE" >
< property name="title" >
< /class >
< class name="EventWithAttendee" table="eventwithattendee" >
< id name="id" column="uid" type="long" value="null" >
< generator class="native" >
< /id >
< property name="name" type="string" length="100" >
< property name="startDate" column="start_date" type="date" >
< property name="duration" type="integer" >
< many-to-one name="location" column="location_id" class="Location" > < set name="attendees" cascade="all" >
< key column="event_id" >
< one-to-many class="EventAttendee" >
< /class >
< class name="EventAttendee" table="attendees" >
< id name="id" column="uid" type="long" >
< generator class="native" >
< /id >
< property name="firstName" type="string" length="20" >
< property name="lastName" type="string" length="20" >
< /class >
< class name="Location" table="locations" >
< id name="id" column="uid" type="long" >
< generator class="native" > < /id >
< property name="name" type="string" >
< property name="address" type="string" >
< /class >
< /hibernate-mapping >
import java.util.Date;
public class Event {
private Long id;
private String title;
private Date date;
Event() {
}
public Long getId() {
return id;
}
private void setId(Long id) {
this.id = id;
}
public Date getDate() {
return date;
}
public void setDate(Date date) {
this.date = date;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String toString() {
return "ID:" + id + "\nTitle:" + title + "\nDate:" + date;
}
}
< ? 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="connection.driver_class" >org.hsqldb.jdbcDriver
< property name="connection.url" >jdbc:hsqldb:data/tutorial
< property name="connection.username" >sa
< property name="connection.password" >< /property >
< ! -- JDBC connection pool (use the built-in) -- >
< property name="connection.pool_size" >1< /property >
< property name="dialect" >org.hibernate.dialect.HSQLDialect
< ! -- Echo all executed SQL to stdout -- >
< property name="show_sql" >true
< mapping resource="Event.hbm.xml"/ >
< / session-factory >
< / hibernate-configuration >
Tuesday, November 27, 2007
Subscribe to:
Posts (Atom)