Konfigurieren von Protokollierung und Batch-Aliasierung in MyBatis

JavaScriptJavaScriptBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Projekt lernst du, wie du die Protokollierung konfigurierst und Batch-Aliasierung für Entitätsklassen in einem MyBatis-basierten Projekt verwendest.

👀 Vorschau

Screenshot der Projektvorschau

🎯 Aufgaben

In diesem Projekt wirst du lernen:

  • Wie du die Protokollierungskomponente mit der log4j-Bibliothek konfigurierst
  • Wie du die Protokollierungsabhängigkeiten zum Projekt hinzufügst
  • Wie du die Protokollierungskomponente in deinem Code verwendest, um Nachrichten zu protokollieren
  • Wie du die Batch-Aliasierung für Entitätsklassen in der MyBatis-Konfigurationsdatei implementierst

🏆 Errungenschaften

Nach Abschluss dieses Projekts wirst du in der Lage sein:

  • Die Protokollierungskomponente in einem Java-Projekt einzurichten und zu konfigurieren
  • Die Protokollierungskomponente verwenden, um Nachrichten auf verschiedenen Ebenen (z. B. DEBUG, INFO, ERROR) zu protokollieren
  • Die Batch-Aliasierung anzuwenden, um die Verwendung von Entitätsklassen in deinem MyBatis-Code zu vereinfachen

Protokollierung konfigurieren

In diesem Schritt lernst du, wie du die Protokollierungskomponente in deinem Projekt konfigurierst.

  1. Erzeuge eine log4j.properties-Konfigurationsdatei im Verzeichnis src/main/resources deines Projekts.

  2. Füge die folgende Konfiguration zur log4j.properties-Datei hinzu:

## Setze das Root-Logger-Level auf DEBUG und seinen einzigen Appender auf stdout.
log4j.rootLogger=DEBUG, stdout

## Definiere das Muster für den Logger
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-5p [%t] - %m%n

Diese Konfiguration setzt das Root-Logger-Level auf DEBUG und leitet die Protokolle mit einem bestimmten Muster zur Konsole (stdout).

Protokollierungsabhängigkeiten hinzufügen

In diesem Schritt fügst du die erforderlichen Abhängigkeiten für die Protokollierungskomponente zu deinem Projekt hinzu.

  1. Öffne die pom.xml-Datei im Projekt MyBatisCourseDemo02.

  2. Füge die folgende Abhängigkeit zum Abschnitt <dependencies> hinzu:

<!-- Log4j-Abhängigkeit -->
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version> <!-- Version nach Bedarf anpassen -->
</dependency>

Diese Abhängigkeit wird die erforderlichen Klassen und Methoden für die Protokollierungskomponente bereitstellen.

Protokollierung in Ihrem Code verwenden

In diesem Schritt erstellst du eine Logger-Instanz und verwendest sie, um Nachrichten in Ihrem Code zu protokollieren.

  1. Öffne die Datei MyBatisTest.java im Verzeichnis /src/test/java/org/lanqiao/test/.

  2. Füge den folgenden Code am Anfang der Datei hinzu:

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
  1. Erstelle eine private statische Logger-Instanz:
private static final Logger logger = Logger.getLogger(MyBatisTest.class);
  1. Lade die log4j-Konfigurationsdatei in der before()-Methode:
static {
    PropertyConfigurator.configure("/home/labex/project/MyBatisCourseDemo02/src/main/resources/log4j.properties");
}
  1. Verwende die Logger-Instanz, um Nachrichten in Ihren Testmethoden zu protokollieren:
@Test
public void testSel() throws IOException{
    logger.debug("Executing query operation...");
    CourseMapper cMapper = session.getMapper(CourseMapper.class);
    List<Course> courses = cMapper.queryAllCourse();
    System.out.println(courses);
    session.close();
}

Wenn du jetzt die Tests ausführst, werden die Protokollierungsnachrichten gemäß den konfigurierten log4j-Eigenschaften in der Konsole angezeigt.

Verwenden von Batch-Aliasierung für Entitätsklassen

In diesem Schritt wirst du Batch-Aliasierung verwenden, um Aliase für die Entitätsklassen in deinem Projekt zu vergeben.

  1. Öffne die Datei mybatis-config.xml im Verzeichnis /src/main/resources/.

  2. Füge den folgenden <typeAliases>-Abschnitt hinzu:

<typeAliases>
    <typeAlias type="org.lanqiao.pojo.Course" alias="Course" />
</typeAliases>

Dies wird einen Alias "Course" für die Klasse org.lanqiao.pojo.Course erstellen, was es dir ermöglicht, den Alias in deinen Mapper-Dateien und anderen Teilen des Codes zu verwenden.

Jetzt kannst du den Alias "Course" anstelle des vollständigen Klassennamens org.lanqiao.pojo.Course in deinen Mapper-Dateien und anderen Teilen des Codes verwenden.

Ausführen

Verwende die folgenden Befehle, um es in einem Terminal zu kompilieren und auszuführen, und prüfe die Testdateien mit Maven:

cd MyBatisCourseDemo02
mvn test

Verwende den Befehl, um den Test im Terminal auszuführen, und du kannst auf die folgenden Ergebnisse verweisen:

Testausführungsresultate
✨ Lösung prüfen und üben

Zusammenfassung

Herzlichen Glückwunsch! Du hast dieses Projekt abgeschlossen. Du kannst in LabEx weitere Übungen absolvieren, um deine Fähigkeiten zu verbessern.