public class StudentTest {
private static SessionFactory sf=null;
@BeforeClass
public static void beforeClass()
{
sf=newAnnotationConfiguration().configure().buildSessionFactory();
}
@Test
public void testStudentSave()
{
Student s = new Student();
// s.setId(1);
s.setName("s1");
s.setAge(23);
Session session=sf.openSession();
session.beginTransaction();
session.save(s);
session.getTransaction().commit();
session.close();
}
@AfterClass
public static void afterClass()
{
try
{
sf.close();
}
catch(Exception e)
{
e.printStackTrace();
}
}
过程:
执行 session.save(s); 时发现s是Student类型;于是去读配置文件hibernate.cfg.xml 发现
<mappingresource="com/ld/model/Student.hbm.xml"/>
既然要save s这个对象 就要 知道s 存储是对应的表结构,
<hibernate-mapping package="com.ld.model">
<class name="Student"table="student">
<id name="id">
<generator class="native"></generator>
</id>
<property name="name"></property>
<property name="age"></property>
</class>
</hibernate-mapping>
接下来hibernate帮助拼出SQL语句,连数据库,存数据