Added tutorials of the hibernate-release 5.2.18.Final
[hibernate4-maven-plugin] / src / it / tutorials-4.3.9 / basic / src / test / java / org / hibernate / tutorial / hbm / NativeApiIllustrationTest.java
1 /*
2  * Hibernate, Relational Persistence for Idiomatic Java
3  *
4  * Copyright (c) 2010, Red Hat Inc. or third-party contributors as
5  * indicated by the @author tags or express copyright attribution
6  * statements applied by the authors.  All third-party contributions are
7  * distributed under license by Red Hat Inc.
8  *
9  * This copyrighted material is made available to anyone wishing to use, modify,
10  * copy, or redistribute it subject to the terms and conditions of the GNU
11  * Lesser General Public License, as published by the Free Software Foundation.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Lesser General Public License
16  * for more details.
17  *
18  * You should have received a copy of the GNU Lesser General Public License
19  * along with this distribution; if not, write to:
20  * Free Software Foundation, Inc.
21  * 51 Franklin Street, Fifth Floor
22  * Boston, MA  02110-1301  USA
23  */
24 package org.hibernate.tutorial.hbm;
25
26 import java.util.Date;
27 import java.util.List;
28
29 import junit.framework.TestCase;
30
31 import org.hibernate.Session;
32 import org.hibernate.SessionFactory;
33 import org.hibernate.cfg.Configuration;
34
35 /**
36  * Illustrates use of Hibernate native APIs.
37  *
38  * @author Steve Ebersole
39  */
40 public class NativeApiIllustrationTest extends TestCase {
41         private SessionFactory sessionFactory;
42
43         @Override
44         protected void setUp() throws Exception {
45                 // A SessionFactory is set up once for an application
46         sessionFactory = new Configuration()
47                 .configure() // configures settings from hibernate.cfg.xml
48                 .buildSessionFactory();
49         }
50
51         @Override
52         protected void tearDown() throws Exception {
53                 if ( sessionFactory != null ) {
54                         sessionFactory.close();
55                 }
56         }
57
58         public void testBasicUsage() {
59                 // create a couple of events...
60                 Session session = sessionFactory.openSession();
61                 session.beginTransaction();
62                 session.save( new Event( "Our very first event!", new Date() ) );
63                 session.save( new Event( "A follow up event", new Date() ) );
64                 session.getTransaction().commit();
65                 session.close();
66
67                 // now lets pull events from the database and list them
68                 session = sessionFactory.openSession();
69         session.beginTransaction();
70         List result = session.createQuery( "from Event" ).list();
71                 for ( Event event : (List<Event>) result ) {
72                         System.out.println( "Event (" + event.getDate() + ") : " + event.getTitle() );
73                 }
74         session.getTransaction().commit();
75         session.close();
76         }
77 }