hibernate.cfg.xml
HibernateUtils.java
Client.java
Message.java
Message.hbm.xml
======================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> <property name="hibernate.dialect"> org.hibernate.dialect.Oracle9Dialect </property> <property name="driverClassName"> oracle.jdbc.OracleDriver </property> <property name="url"> jdbc:oracle:thin:@172.21.104.41:1521:alpsd </property> <property name="username">portal</property> <property name="password">portal</property> <property name="show_sql">true</property> <property name="format_sql">true</property> <property name="hibernate.hbm2ddl.auto">create</property> <mapping resource="domain/Message.hbm.xml" /> </session-factory> </hibernate-configuration>
======================HibernateUtils.java======================
package persistance; import org.hibernate.SessionFactory; import org.hibernate.cfg.Configuration; public class HibernateUtil { private static SessionFactory sessionFactory; static { try { sessionFactory = new Configuration().configure() .buildSessionFactory(); } catch (Throwable ex) { throw new ExceptionInInitializerError(ex); } } public static SessionFactory getSessionFactory() { return sessionFactory; } public static void shutdown() { getSessionFactory().close(); } }
======================Client.java======================
package hello; import java.util.Iterator; import java.util.List; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import persistance.HibernateUtil; import domain.Message; public class HelloWorld { public static void main(String[] args) { Configuration cfg1; SessionFactory sf; Session session; cfg1 = new Configuration().configure(); sf = cfg1.buildSessionFactory(); session = sf.openSession(); Message message = new Message("Hello World"); Long msgId = (Long) session.save(message); /* * Transaction tx = session.beginTransaction(); Message message = new * Message("Hello World"); Long msgId = (Long) session.save(message); * tx.commit(); session.close(); * * Session newSession = HibernateUtil.getSessionFactory().openSession(); * Transaction newTransaction = newSession.beginTransaction(); List * messages = newSession.createQuery( "from Message m order by ? m.text * asc").list(); System.out.println(messages.size() + " message(s) * found:"); * * for (Iterator iter = messages.iterator(); iter.hasNext();) { Message * loadedMsg = (Message) iter.next(); * System.out.println(loadedMsg.getText()); } newTransaction.commit(); * newSession.close(); HibernateUtil.shutdown(); */ } }
======================Message.java======================
package domain; public class Message { private Long id; private String text; private Message nextMessage; Message() { } public Message(String text) { this.text = text; } public Long getId() { return id; } private void setId(Long id) { this.id = id; } public String getText() { return text; } public void setText(String text) { this.text = text; } public Message getNextMessage() { return nextMessage; } public void setNextMessage(Message nextMessage) { this.nextMessage = nextMessage; } }
======================Message.hbm.xml======================
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <hibernate-mapping> <class name="domain.Message" table="MESSAGES"> <id name="id" column="MESSAGE_ID" type="long"> <generator class="increment" /> </id> <property name="text" column="MESSAGE_TEXT" type="string"/> <many-to-one name="nextMessage" cascade="all" column="NEXT_MESSAGE_ID" foreign-key="FK_NEXT_MESSAGE" /> </class> </hibernate-mapping>
ant-1.6.5.jar ant-antlr-1.6.5.jar ant-junit-1.6.5.jar ant-launcher-1.6.5.jar ant-swing-1.6.5.jar antlr-2.7.6.jar asm-attrs.jar asm.jar c3p0-0.9.1.jar cglib-2.1.3.jar checkstyle-all.jar cleanimports.jar commons-collections-2.1.1.jar commons-logging-1.0.4.jar concurrent-1.3.2.jar dom4j-1.6.1.jar ehcache-1.2.3.jar hibernate3.jar jaas.jar jacc-1_0-fr.jar javassist.jar jaxen-1.1-beta-7.jar jboss-cache.jar jboss-common.jar jboss-jmx.jar jboss-system.jar jgroups-2.2.8.jar jta.jar junit-3.8.1.jar log4j-1.2.11.jar ojdbc-14.jar oscache-2.1.jar proxool-0.8.3.jar swarmcache-1.0rc2.jar syndiag2.jar versioncheck.jar xerces-2.6.2.jar xml-apis.jar