Я хотел бы усечь все таблицы моей базы данных между одним интеграционным тестом и другим. Как лучше всего сделать это с помощью спящего режима?
В настоящее время я делаю следующее:
public void cleanDatabase() {
doWithSession(new Action1<Session>() {
@Override
public void doSomething(Session session) {
SQLQuery query = session.createSQLQuery("truncate table stuff");
// todo - generify this to all tables
query.executeUpdate();
}
});
(doWithSession - это небольшая оболочка, которая создает и закрывает сеанс). Я мог бы перебирать все мои сопоставленные объекты, используя отражение ... Мне интересно, решил ли кто-нибудь уже эту проблему.