Доброе утро,
вчера я впервые использовал MyBatis.В качестве отправной точки я использовал пример из Loiane Groner .И я попытался заменить базу данных mysql внутренним hsqldb (v1.8).Я изменил все, но я никогда не получал тестовый модуль вставки, чтобы работать, как ожидалось.См. Ниже, сначала все необходимые детали.
<insert id="insert" parameterType="Contact">
INSERT INTO CONTACT ( CONTACT_EMAIL, CONTACT_NAME, CONTACT_PHONE )
VALUES ( #{email}, #{name}, #{phone} );
</insert>
public void insert(Contact contact){
SqlSession session = sqlSessionFactory.openSession();
try {
session.insert("Contact.insert", contact);
session.commit();
} finally {
session.close();
}
}
@Test
public void testInsert() {
Contact actual = new Contact();
actual.setName("Adam");
actual.setPhone("+001 811 23456");
actual.setEmail("anonym@gmail.com");
contactDAO.insert( actual );
assertEquals(1, contactDAO.selectAll().size() );
}
Этот тест пройдет, потому что с помощью метода select я получу контакт, который я вставил ранее.Но если я открою hsqldb, в нем нет контакта (входа). Я бы точно ожидал, что этот тест пройдет только один раз.И если я позвоню во второй раз, должно быть более одной записи.Но этого не происходит.Почему не остается контактным лицом?(Нет метода очистки)