Wymuszenie na bazie H2 czyszczenia co start aplikacji

0

Witam wszystkich,

Bawię się troche z wbudowaną bazą H2. Całość skonfigurowana przy użyciu springa, wykorzystuję JPA. Wszystko zdaje się ładnie działać oprócz jednego:

chciałbym, aby po zamknięciu aplikacji utworzona baza była usuwana, tak aby każde uruchomienie powodowało rekreację, dodanie danych testowych od nowa i pracę w środowisku bez efektów ubocznych pozostałych po poprzednich uruchomieniach. Poniżej konfiguracja źródła danych.

	@Bean(name = "dataSource")
	public DataSource getDataSource() {
		DataSource dataSource = createDataSource();
		DatabasePopulatorUtils.execute(createDatabasePopulator(), dataSource);
		return dataSource;
	}

	private DatabasePopulator createDatabasePopulator() {
		ResourceDatabasePopulator databasePopulator = new ResourceDatabasePopulator();
		databasePopulator.setContinueOnError(true);
		databasePopulator.addScripts(new ClassPathResource("sql/schema-script.sql"), new ClassPathResource("sql/" + ModeUtils.getMode().getModeName() + "-data-script.sql"));
		return databasePopulator;
	}

	private SimpleDriverDataSource createDataSource() {
		SimpleDriverDataSource simpleDriverDataSource = new SimpleDriverDataSource();
		simpleDriverDataSource.setDriverClass(org.h2.Driver.class);
		simpleDriverDataSource.setUrl("jdbc:h2:~/database/" + databaseName + ";AUTO_RECONNECT=FALSE");
		simpleDriverDataSource.setUsername(databaseUser);
		simpleDriverDataSource.setPassword(databasePassword);
		return simpleDriverDataSource;
	}

Prawdopodobnie jest to kwestia jakiegoś parametru w url, ale po wstępnych oględzinach nie znalazłem nic co by mnie satysfakcjonowało.

Czy ma ktoś jakiś pomysł?

0

Skoro jest to baza wbudowana/w pamięci to zatrzymanie aplikacji automatycznie ja usunie

1 użytkowników online, w tym zalogowanych: 0, gości: 1