Cum să folosești Flyway API în Java
DodaTech
Updated 2025-01-15
1 min read
In this tutorial, you'll learn about Cum să folosești Flyway API în Java. We cover key concepts, practical examples, and best practices.
Flyway API Java îți permite să controlezi migrările direct din cod, integrându-le în procesul de pornire al aplicației sau în operațiuni administrative.
Problema
În aplicațiile enterprise, vrei ca migrările să se execute automat la pornirea aplicației, nu manual din linia de comandă.
Dependență Maven
<dependency>
<groupId>org.flywaydb</groupId>
<artifactId>flyway-core</artifactId>
<version>10.0.0</version>
</dependency>
Configurare de bază (Java)
import org.flywaydb.core.Flyway;
public class MigrationRunner {
public static void main(String[] args) {
Flyway flyway = Flyway.configure()
.dataSource("jdbc:postgresql://localhost:5432/baza_mea",
"user", "password")
.locations("db/migration")
.load();
// Rulează migrările
int count = flyway.migrate();
System.out.println("Migrări aplicate: " + count);
}
}
Configurare avansată
Flyway flyway = Flyway.configure()
.dataSource(dataSource)
.locations("classpath:db/migration")
.schemas("app")
.table("flyway_history")
.baselineOnMigrate(true)
.baselineVersion("1.0")
.validateOnMigrate(true)
.outOfOrder(false)
.load();
FlywayMigrationResult result = flyway.migrate();
System.out.println("Versiune curentă: " + result.targetVersion);
Spring Boot
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import javax.sql.DataSource;
@Configuration
public class FlywayConfig {
@Bean
public Flyway flyway(DataSource dataSource) {
return Flyway.configure()
.dataSource(dataSource)
.locations("db/migration")
.baselineOnMigrate(true)
.load();
}
}
Operațiuni API
Flyway flyway = Flyway.configure()
.dataSource(url, user, password)
.load();
// Info
MigrationInfoService info = flyway.info();
for (MigrationInfo mi : info.all()) {
System.out.println(mi.getVersion() + " - " + mi.getState());
}
// Baseline
flyway.baseline();
// Clean (cu grijă!)
// flyway.clean();
// Repair
flyway.repair();
Erori frecvente
- DataSource incorect — URL-ul JDBC trebuie să fie valid.
- Driver lipsă — adaugă driverul JDBC în classpath.
- Versiune Flyway incompatibilă — asigură-te că versiunea API se potrivește cu cea a scripturilor.
FAQ
Built by the developers of Doda Browser, DodaZIP, and Durga Antivirus Pro. DodaTech tools integrate seamlessly with Flyway for enhanced productivity and security.
Built by the developers of DodaTech
Doda Browser, DodaZIP & Durga Antivirus Pro