Metadata in Java, defined as the data about the data, is called “Metadata”. Metadata is also said to be documentation about the information required by the users. This is one of the essential aspects in the case of data warehousing.
ADVERTISEMENT Popular Course in this category JAVA MASTERY - Specialization | 78 Course Series | 15 Mock TestsReal-Time Examples: A library catalog, the table of content, data items about person data (person weight, a person walking, etc.), etc.
Metadata Consisting of the following things:
- The description and location of the system and its components.
- It also has the Names, definitions, content, and structures of data and end-user views.
- Identification of authoritative data.
- Integration and transformation rules are used to populate data.
- Subscription information of subscribers.
- Used to analyze data usage and performance.
Why is Metadata Necessary?
It gives the Java developers information about the contents like table data, library catalog, etc., and structures.
Types of Metadata
There are 3 types of metadata:
- Operational Metadata
- Extraction and Transformation Metadata
- End-User Metadata
1. Operational Metadata: Operational metadata has all the information of the operational data sources. While selecting information from the source system for Datawarehouse, we will divide the records, combine the factors of documents from various sources, and deal with multiple coding schemes and field lengths. While we deliver the information to end-users, then we must be able to get back to source data sets.
2. Extraction and Transformation Metadata: Extraction and Transformation Metadata include data about removing data from the source systems. Those extraction methods, frequencies, and business rules for data extraction belong to Extraction and Transformation Metadata.
3. End-User Metadata: The end-user metadata is the navigational map of the data house. It enables the end-users to find the data from the data warehouse.
How does Metadata work in Java?
Java Metadata works based on data provided to it. It gives information of data about the data.
Syntax:
class Metadata{ public static void main(String args[]){ try{ //load required database class //creating database metadata class DatabaseMetaData metaData=con.getMetaData(); //display the metadata of the table content System.out.println(metaData.getDriverName()); System.out.println(metaData.getDriverVersion()); System.out.println(metaData.getUserName()); System.out.println(metaData.getDatabaseProductName()); System.out.println(metaData.getDatabaseProductVersion()); con.close(); }catch(Exception e){ System.out.println(e);} } }Note: Before getting into the example, you must need MySQL database and mysql-connector jar.
Examples to Implement Metadata in Java
Below are examples of Metadata in Java:
Example #1 – Result Set Metadata
?Code:
import java.sql.*;//importing sql package public class A {//Creating class //main method for run the application public static void main(String args[]) { try { //loading my sql driver Class.forName("com.mysql.jdbc.Driver"); //get the connection by providing database, user name and password Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root"); //select the all from employee table PreparedStatement preparedStatement = connection.prepareStatement("select * from employee"); //executing the query ResultSet resultSet = preparedStatement.executeQuery(); //Create result meta data for get the meta data of table ResultSetMetaData resultSetMetaData = resultSet.getMetaData(); //Displaying meta data of employee table System.out.println("Total Number of columns: " + resultSetMetaData.getColumnCount()); System.out.println("1st Column name : " + resultSetMetaData.getColumnName(1)); System.out.println("2nd Column name : " + resultSetMetaData.getColumnName(2)); System.out.println("3rd Column name : " + resultSetMetaData.getColumnName(3)); System.out.println("Column Type Name of 1st column: " + resultSetMetaData.getColumnTypeName(1)); System.out.println("Column Type Name of 2nd column: " + resultSetMetaData.getColumnTypeName(2)); System.out.println("Column Type Name of 3rd column: " + resultSetMetaData.getColumnTypeName(3)); connection.close(); } catch (Exception e) { System.out.println(e); } } }
Output:
Example #2 – Database Metadata
Code:
import java.sql.*;//importing sql package public class A {//Creating class //main method for run the application public static void main(String args[]) { try { //loading my sql driver Class.forName("com.mysql.jdbc.Driver"); //get the connection by providing database, user name and password Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root", "root"); //select the all from employee table PreparedStatement preparedStatement = connection.prepareStatement("select * from employee"); //executing the query preparedStatement.executeQuery(); //Create databse result set meta data for get the meta data of databse of mysql DatabaseMetaData databaseMetaData=connection.getMetaData(); //Displaying meta data of mysql table System.out.println("MYSQL Driver Name: "+databaseMetaData.getDriverName()); System.out.println("MYSQL Driver Version: "+databaseMetaData.getDriverVersion()); System.out.println("MYSQL UserName: "+databaseMetaData.getUserName()); System.out.println("MYSQL Database Product Name:"+databaseMetaData.getDatabaseProductName()); System.out.println("MYSQL Database Product Version: "+databaseMetaData.getDatabaseProductVersion()); connection.close(); } catch (Exception e) { System.out.println(e); } } }
Output:
Example #3 – Database Metadata for Extracting Table Names
Code:
import java.sql.*;//importing sql package public class A {// Creating class // main method for run the application public static void main(String args[]) { try { // loading my sql driver Class.forName("com.mysql.jdbc.Driver"); // get the connection by providing database, user name and password Connection connection = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "root"); // Create databse result set meta data for get the meta data of // databse of mysql DatabaseMetaData dbmd = connection.getMetaData(); String table[] = { "VIEW" }; ResultSet resultSet = dbmd.getTables(null, null, null, table); // iterating number table names from database of mysql while (resultSet.next()) { System.out.println("Table name is: "+resultSet.getString(3)); } connection.close(); } catch (Exception e) { System.out.println(e); } } }
Output:
Conclusion
Metadata in Java is used to know the data about data. It means, for example, table field names, field data type, field data type length, database table names, number of databases that existed in the specific database, etc.
Das obige ist der detaillierte Inhalt vonMetadaten in Java. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Hei?e KI -Werkzeuge

Undress AI Tool
Ausziehbilder kostenlos

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem v?llig kostenlosen KI-Gesichtstausch-Tool aus!

Hei?er Artikel

Hei?e Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Hei?e Themen





Laravel unterstützt die Verwendung nativer SQL -Abfragen, aber die Parameterbindung sollte bevorzugt werden, um die Sicherheit zu gew?hrleisten. 1. Verwenden Sie db :: select (), um Auswahlabfragen mit Parameterbindung auszuführen, um die SQL -Injektion zu verhindern. 2. Verwenden Sie db :: update (), um Aktualisierungsvorg?nge durchzuführen und die Anzahl der betroffenen Zeilen zurückzugeben. 3.. Verwenden Sie db :: Insert (), um Daten einzufinden. 4. Verwenden Sie db :: delete (), um Daten zu l?schen; 5. Verwenden Sie db :: Anweisung (), um SQL -Anweisungen ohne Ergebniss?tze wie Erstellen, Alter usw. auszuführen; 6. Es wird empfohlen, in QueryBuilder in der Lage zu verwenden, native Ausdrücke zur Verbesserung der Sicherheit zu kombinieren, um die Sicherheit zu verbessern

Verwenden Sie JUNIT5 und Mockito, um Abh?ngigkeiten für Unit -Tests effektiv zu isolieren. 1. Erstellen Sie ein Mock -Objekt über @mock, @InjectMocks injizieren die getestete Instanz, @extendWith erm?glicht die Mockito -Erweiterung. 2. verwenden Sie, wenn (). Thatreturn (), um das Simulationsverhalten zu definieren, verifizieren (), um die Anzahl der Methodenaufrufe und Parameter zu überprüfen. 3. kann die Ausnahmszenarien simulieren und die Fehlerbehandlung überprüfen; 4.. Konstruktorinjektion empfehlen, übersimulierung vermeiden und die Testeratomizit?t beibehalten. 5. Verwenden Sie Assertall (), um Behauptungen zusammenzuführen, und @Nested organisiert die Testszenarien, um die Wartbarkeit und Zuverl?ssigkeit der Tests zu verbessern.

Go Generics werden seit 1.18 unterstützt und zum Schreiben von generischen Code für Typ-Safe verwendet. 1. Die generische Funktion printslice [tany] (s [] t) kann Scheiben jeglicher Art drucken, z. B. [] int oder [] String. 2. Durch die Typenbeschr?nkungsnummer begrenzt t auf numerische Typen wie int und float, summe [tNumber] (Slice [] t) T Safe Summation wird realisiert. 3. Die generische Struktur -TypBox [tany] struct {valuet} kann jeden Typwert in Einklang bringen und mit dem NewBox [Tany] (VT)*Box [t] Constructor verwendet werden. 4. Set (vt) hinzufügen und () t () t zum Boxen [t] ohne boxen

TABLE-LAYOUT: Behoben erzwingt die Tabellenspaltenbreite, die durch die Zellbreite der ersten Zeile bestimmt wird, um den Inhalt zu vermeiden, der das Layout beeinflusst. 1. Set Table-Layout: Behoben und geben Sie die Tabellenbreite an; 2. Setzen Sie das spezifische Verh?ltnis der Spaltenbreite für die erste Zeile th/td; 3. Verwenden Sie den wei?en Raum: Nowrap, überlauf: versteckt und textüberfluss: Ellipsis zum Steuerung des Textüberlaufs; 4. Für Hintergrundverwaltung, Datenberichte und andere Szenarien, die ein stabiles Layout und eine Hochleistungsrendern erfordern, die das Layout-Jitter effektiv verhindern und die Renderneffizienz verbessern k?nnen.

JSON.Loads () wird verwendet, um JSON -Zeichenfolgen in Python -Datenstrukturen zu analysieren. 1. Die Eingabe muss eine in doppelte Zitate eingewickelte Zeichenfolge sein und der boolesche Wert ist wahr/falsch. 2. unterstützt die automatische Konvertierung von Null → Keine, Objekt → DICT, Array → Liste usw.; 3. Es wird oft verwendet, um JSON -Zeichenfolgen zu verarbeiten, die von der API zurückgegeben werden. Auf Response_String kann beispielsweise nach der Parsen von JSON.Loads () direkt zugegriffen werden. Bei der Verwendung müssen Sie sicherstellen, dass das JSON -Format korrekt ist, andernfalls wird eine Ausnahme ausgel?st.

ChoosetheApprotedeIntexTe -basedonusecase, SuchAssinglefield, Compound, Multikey, Text, Geospatial, orttlindexes.2.ApplyTheesrRuewhencreatedCompoundIndexesByorderingfieldsasequalit?t, Sorte

Maven ist ein Standardwerkzeug für Java -Projektmanagement und -aufbau. Die Antwort liegt in der Tatsache, dass Pom.xml verwendet wird, um Projektstruktur, Abh?ngigkeitsmanagement, Konstruktionslebenszyklusautomation und Plug-in-Erweiterungen zu standardisieren. 1. Verwenden Sie POM.xml, um Gruppen, Artefaktid, Version und Abh?ngigkeiten zu definieren; 2. Master -Kernbefehle wie MVNClean, Compile, Test, Paket, Installation und Bereitstellen; Fn. V. 5.

In Python ist die übertragung von Funktionsargumenten "Objektreferenz", dh für ver?nderliche Objekte (wie Listen und W?rterbücher), in-situ-Modifikationen (z. B. Anhang, Zuweisungsscheibe) innerhalb der Funktion wirkt sich direkt auf das ursprüngliche Objekt aus. 2. Für unver?nderliche Objekte (wie Ganzzahlen, Zeichenfolgen) kann das ursprüngliche Objekt in der Funktion nicht ge?ndert werden, und die Neuzuweisung erzeugt nur ein neues Objekt. 3. Die Parameter passieren eine Kopie der Referenz. Wenn die Variable in der Funktion (z. B. LST = [...]) wiederhergestellt wird, wird die Verbindung mit dem ursprünglichen Objekt nicht beeinflusst und die externe Variable nicht betroffen. Das ?ndern ver?nderlicher Objekte wirkt sich daher auf die ursprünglichen Daten aus, w?hrend unver?nderliche Objekte und Neuzuweisungen dies nicht tun, was erkl?rt, warum die Liste nach der Modifikation innerhalb der Funktion extern sichtbar ist, w?hrend die Zahlung von Ganzzahl nur lokal sind.
