Hibernate не создает таблицы с H2 в базе данных памятиJAVA

Программисты JAVA общаются здесь
Anonymous
Hibernate не создает таблицы с H2 в базе данных памяти

Сообщение Anonymous »

Я пытаюсь проверить приложение, которое использует 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

Вернуться в «JAVA»