Hvordan bruke JOOQ Java Generator inkluderer og ekskluderer

stemmer
0

De JOOQ Java-kode generasjon verktøy bruker vanlige uttrykk som er definert i inkluderer og ekskluderer elementer for å kontrollere hva som er generert. Jeg kan ikke finne en forklaring på hva skjemaet struktur er at disse uttrykkene blir drevet mot.

Jeg ønsker å ha muligheten til å ekskludere spesifikke databaser i serveren samt bord av prefiks eller spesielt.

Enkle eksempler:

  • Gitt en SQL-server med to DBs 'A' og 'B', hvordan kan jeg instruere JOOQ å bare generere for tabeller i DB 'A'?

  • Hvordan i instruere JOOQ å bare generere for tabeller som starter med forstavelsen qtbl?

Det ville være flott om det var noen eksempel bruk tilfeller tilgjengelige som viser noen enkle vanlige konfigurasjoner.

Publisert på 13/01/2020 klokken 23:55
kilden bruker
På andre språk...                            


1 svar

stemmer
0

Den jOOQ manuelle delen om inkluderer og ekskluderer , samt noen andre deler som forklarer kodegenerator er bruk av regulære uttrykk for å matche identifikator fastslår at kodegenerator vil alltid prøve å:

  • Matche fullt kvalifiserte identifikatorer
  • Matche ukvalifiserte identifikatorer

Eller, hvis du bruker jOOQ 3.12+ og ikke slå av <regexMatchesPartialQualification/>:

  • Matche delvis kvalifiserte identifikatorer (se # 7947 )

For eksempel:

<excludes>
  (?i:                      # Using case insensitive regex for the example
       database_prefix.*?\. # Match a catalog prefix prior to the qualifying "."
       .*?\.                # You don't seem to care about schema names, so match them all
       table_prefix.*?      # Match a table prefix at the end of the identifier
  )
</excludes>

I tillegg til ovennevnte, hvis du ønsker å ekskludere bestemte databaser ( "kataloger") blir generert uten mønstergjenkjenning, vil du få enda bedre resultater hvis du angir din <inputCatalog>A</inputCatalog>. Se også håndbokens avsnitt om skjema kartlegging .

Fordeler inkluderer en mye raskere kodegenerering, fordi bare at katalogen vil bli søkte på objekter for å generere, før unntatt dem igjen ved hjelp av regulære uttrykk. Så kan konfigurasjonen være dette:

<!-- Include only database A -->
<inputCatalog>A</inputCatalog>

<!-- Include only tables with this (unqualified) prefix -->
<includes>qtbl.*</includes>
Svarte 14/01/2020 kl. 12:09
kilden bruker

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more