Я пытаюсь проверить приложение, которое использует Springmvc и Hibernate с MySQL. Я пытался использовать HSQLDB, но, поскольку синтаксис не совпадает, как MySQL, запросы могут не работать, поэтому я решил перейти к H2.
Проблема в том, что когда я запускаю его, она говорит «таблица MailConfig не найдена», и если я создал на синтаксисе init, это говорит о том, что уже существует. < /p>
Я настроил простой тест, который ничего не делает, я только хочу, чтобы он работал.@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = {"file:src/test/resources/applicationContext.xml"})
@Transactional
@WebAppConfiguration
public class ServiceTest {
private static DataSource ds;
@BeforeClass
public static void setUpConnection(){
ds = new DataSource();
ds.setDriverClassName("org.h2.Driver");
ds.setUrl("jdbc:h2:mem:testDB");
ds.setUsername("sa");
ds.setPassword("");
HibernateConfiguration.dataSourceTest(ds);
}
@AfterClass
public static void cleanConnection(){
HibernateConfiguration.dataSourceTest(null);
}
}
< /code>
applicationcontext.xml
< /code>
< /p>
persistence.xml
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/ ... ce_2_0.xsd"
version="2.0">
org.hibernate.ejb.HibernatePersistence
< /code>
< /p>
mailconfig.java
@Entity
public class MailConfig {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
Long id;
@Column
String host;
}
< /code>
Я указываю конфигурацию Hibernate в тесте, поскольку в приложении используется классы Java, а не файлы XML. < /p>
Может ли кто -нибудь помочь мне с этим? Или, если есть более простой способ протестировать его с помощью классов Java, я еще не смог найти решение.
Я хочу, чтобы оно работало локально, а затем он должен работать с Jenkins, так что это может создать вещи, которые не могут сделать на виртуальной машине. < /P>
Спасибо!>
Подробнее здесь: https://stackoverflow.com/questions/406 ... y-database