Wie jOOQ Java Generator enthält und umfasst nicht verwenden

stimmen
0

Die jOOQ Java-Code-Generierungs-Tools verwendet reguläre Ausdrücke, definiert in der enthält und schließt Elemente zu kontrollieren, was erzeugt wird. Ich kann nicht eine Erklärung, was die Schemastruktur ist, dass diese Ausdrücke läuft gegen finden.

Ich möchte die Möglichkeit haben, auf bestimmte Datenbanken auf dem Server sowie Tabellen mit Präfix oder speziell ausschließen.

Einfache Beispiele:

  • Bei einem SQL-Server mit zwei DBs ‚A‘ und ‚B‘, wie kann ich anweisen jOOQ zu generieren nur für Tabellen in DB ‚A‘?

  • Wie kann in anweisen jOOQ nur für Tabellen erzeugen mit dem Präfix „qtbl“ ab?

Es wäre toll, wenn es einige Beispiele Anwendungsfall zur Verfügung standen einige einfache gemeinsame Konfigurationen zeigen.

Veröffentlicht am 13/01/2020 um 23:55
quelle vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
0

Der jOOQ manuelle Abschnitt über enthält und schließt , sowie ein paar andere Abschnitte, die den Code - Generator Verwendung von regulären Ausdrücken erklären Kennung gründet übereinstimmen , dass der Codegenerator immer versuchen , :

  • Wer passt zu vollqualifizierten Identifikatoren
  • Wer passt zu unqualifizierten Identifikatoren

Oder wenn Sie mit jOOQ 3.12+ und nicht ausschalten <regexMatchesPartialQualification/>:

  • Wer passt teilweise qualifizierte Bezeichner (siehe # 7947 )

Beispielsweise:

<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>

Zusätzlich zu den oben genannten, möchten , wenn Sie bestimmte Datenbanken ( „Kataloge“) ausschließen aus ohne Musterabgleich erzeugt wird, werden Sie noch bessere Ergebnisse, wenn Sie Ihre angeben <inputCatalog>A</inputCatalog>. Siehe auch die Kapitel über Schema - Mapping Anleitung .

Die Vorteile sind eine viel Code-Generierung schneller, da nur dieser Katalog durchsucht werden für Objekte, so dass sie wieder mit regulären Ausdrücken vor zu erzeugen, um auszuschließen. So könnte Ihre Konfiguration sein:

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

<!-- Include only tables with this (unqualified) prefix -->
<includes>qtbl.*</includes>
Beantwortet am 14/01/2020 um 12:09
quelle vom benutzer

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