在使用junit进行hibernate的demo单元测试时 我们会每次都要建一个SessionFactory,而SessionFactory的建立是很耗费时间的,就跟连接池一样,我们应该建一次,以后用时直接用就可以,那么怎么来实现呢!
[1].[代码] 使用@BeforeClass 跳至 [1]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
public
class
TeacherTest {
private
static
SessionFactory sf =
null
;
// 在对象初始化之前,马上执行这个方法
@BeforeClass
public
static
void
beforeClass() {
try
{
sf =
new
Configuration().configure().buildSessionFactory();
}
catch
(HibernateException e) {
e.printStackTrace();
}
}
@Test
public
void
test() {
Teacher teacher =
new
Teacher();
teacher.setTeachername(
"teachername"
);
teacher.setTeachersex(
"teachersex"
);
Session session = sf.getCurrentSession();
session.beginTransaction();
session.save(teacher);
session.getTransaction().commit();
}
// 用完之后
@AfterClass
public
static
void
afterClass() {
sf.close();
}
}
|