A Junit common annotation
@Test: Test method
@Before: initialization method
@After: release resources
Second, create a test class StudentsTest
Three code skeleton to access database through Hibernate API
Four test code
import java.util.Date; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import org.hibernate.service.ServiceRegistryBuilder; import org.junit.After; import org.junit.Before; import org.junit.Test; // test class public class StudentsTest { private SessionFactory sessionFactory; private Session session; private Transaction transaction; @Before public void init(){ // create configuration object Configuration config = new Configuration().configure(); //config.addClass(Students.class); // create service registration object ServiceRegistry serviceRegistery = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry(); // create session factory object sessionFactory = config.buildSessionFactory(serviceRegistery); // create session object session = sessionFactory.openSession(); // start transaction transaction = session.beginTransaction(); } @After public void destory(){ // commit the transaction transaction.commit(); // close the session session.close(); // close the session factory sessionFactory.close(); } @Test public void testSaveStudents () { Students s= new Students(1,"Zhang Sanfeng","Male",new Date(),"Wudang Mountain"); session.save(s); } }
Five test outputs
Hibernate:
drop table if exists STUDENTS
Hibernate:
create table STUDENTS (
SID integer not null,
SNAME varchar(255),
GENDER varchar(255),
BIRTHDAY datetime,
ADDRESS varchar(255),
primary key (SID)
)
September 17, 2017 3:31:29 pm org.hibernate.tool.hbm2ddl.SchemaExport execute
INFO: HHH000230: Schema export complete
Hibernate:
insert
into
STUDENTS
(SNAME, GENDER, BIRTHDAY, ADDRESS, SID)
values
(?, ?, ?, ?, ?)
Six test results