Inhaltsverzeichnis
Bean-Objekte speichern
1. Erstellen Sie ein Projekt
2.添加注解将bean存入到容器中
2.8 Bean-Annotationen verwenden
Bean-Objekte abrufen
Setter-Injektion
1. Eigenschaftsinjektion
获取bean对象
1.属性注入
1.1 Autowired
1.2Resource
1.3二者区别
2.构造方法注入
2. Konstruktormethodeninjektion
Klassische Interviewfragen
Heim Java javaLernprogramm Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

May 07, 2023 pm 01:31 PM
java spring

    Bean-Objekte speichern

    Als wir zuvor Bean-Objekte gespeichert haben, mussten wir eine Zeile mit Beans in die Konfigurationsdatei einfügen, um sie zu injizieren.

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Diese Injektionsmethode ist nicht gut, wenn ein Fehler auftritt In der Konfigurationsdatei befindet sich das Programm. Es wird keine Fehlermeldung angezeigt. Das ist für Anfänger sehr unfreundlich.

    1. Erstellen Sie ein Projekt

    Erstellen Sie eine Startklasse und eine Hauptmethode创建启动类和main方法

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    引入依赖

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    <dependencies>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
    
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
    </dependencies>
    Nach dem Login kopieren
    Nach dem Login kopieren

    创建配置文件

    我们约定好创建的bean对象放在com.bean包下:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    <dependencies>
       <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
    
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-beans</artifactId>
            <version>5.2.3.RELEASE</version>
        </dependency>
    </dependencies>
    Nach dem Login kopieren
    Nach dem Login kopieren

    2.添加注解将bean存入到容器中

    使用Spring的核心就是使用注解,我们学习的注解有5个

    @Controller 【控制器】@Service 【服务】@Repository 【仓库】@Configuration 【配置/布局】@Component 【组件】 2.1 controller

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    我们之前能够通过传入id参数来获取对象,但那是加了一行bean手动加入的id,但现在我们使用了注解,难道就只能使用类类型来获取吗?

    我们使用注解注入bean对象时,id其实默认是类名的小驼峰形式:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    原因先不解释,后面会说。

    容易犯的错:
    我们之前在配置文件中加入了bean对象查找的根目录,意味着会从这个目录开始向下搜索,但不会向上:

    下级目录

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    上级目录

    Java Spring Lese- und Speicherinstanzanalyse

    Beispielanalyse von Lese- und Schreibvorgängen in Java SpringEinführung von Abhängigkeiten

    Java Spring Reading and Storage Instance AnalysisBeispielanalyse von Lese- und Schreibvorgängen in Java Springrrreee

    Konfigurationsdatei erstellen

    Wir haben vereinbart, das Bean-Objekt in com.bean zu erstellen Paket: Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Java Spring Lese- und SpeicherinstanzanalyseBeispielanalyse von Lese- und Schreibvorgängen in Java Spring rrreee

    2. Fügen Sie Anmerkungen hinzu, um Beans im Container zu speichern
    Der Kern der Verwendung von Spring besteht in der Verwendung von Anmerkungen. Wir haben 5 Anmerkungen gelernt

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring@Controller [Controller] @Service [Service] @Repository [Warehouse] @Configuration [Konfiguration /Layout]@Component [Component] 2.1 Controller

    Java Spring Lese- und Speicherinstanz AnalyseBeispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Java Spring Lese- und Speicherinstanzanalyse
    Wir konnten das Objekt zuvor durch die Übergabe des Parameters „id“ erhalten, aber das bedeutete, dass wir eine Reihe von Beans hinzufügen mussten, um die ID manuell hinzuzufügen. Aber jetzt, wo wir Annotationen verwenden, können wir dann nur den Klassentyp verwenden, um es zu erhalten?

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Wenn wir Annotationen zum Einfügen von Bean-Objekten verwenden, ist die ID standardmäßig die Kamelfallform des Klassennamens:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Java Spring-Lese- und Speicherinstanzanalyse
    Der Grund wird zunächst nicht erklärt, sondern später besprochen.

    Beispielanalyse von Lese- und Schreibvorgängen in Java SpringEinfache Fehler:
    Wir haben zuvor das Stammverzeichnis für die Bean-Objektsuche in der Konfigurationsdatei hinzugefügt, was bedeutet, dass die Suche von diesem Verzeichnis nach unten, aber nicht nach oben beginnt:

    Verzeichnis herunterladenBeispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Java Spring-Lese- und Speicherbeispielanalyse
    Java Spring Lese- und Speicherbeispielanalyse

    Beispielanalyse von Lese- und Schreibvorgängen in Java SpringÜbergeordnetes Verzeichnis

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring2.2 Dienst

    2.3 Repository

    🎜🎜🎜🎜🎜🎜 🎜2.4 Konfiguration🎜 🎜🎜🎜🎜🎜🎜🎜2,5 Komponente🎜🎜🎜 🎜🎜🎜🎜🎜2.6 Warum gibt es fünf Hauptkategorien von Anmerkungen? Dasselbe . 🎜🎜🎜🎜🎜🎜🎜🎜Anhand der beiden Klassenanmerkungen können wir deutlich erkennen, dass die anderen vier Annotationen alle Methoden der Component-Annotation einführen, was bedeutet, dass Component der Vater der anderen vier Klassenannotationen ist. Was macht Component also? Es ist einfach nicht einfach, es beim Kommentieren in die anderen vier Kategorien einzuordnen~🎜🎜2.7 Warum ist die Standard-ID ein kleiner Buckel? Wir verwenden die globale Suche:🎜🎜

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    AnnotationBeanNameGenerator finden:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Test:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    2.8 Bean-Annotationen verwenden

    Bean-Annotation ist eine Methodenannotation. Wenn sie für eine Methode verwendet wird, wird sie zurückgegeben Das Objekt wird ebenfalls von Spring injiziert, muss jedoch mit fünf Haupttypen von Anmerkungen verwendet werden (jeder reicht aus).

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    id ist der Methodenname. 2.8.1 Bean-Umbenennung verliert seine Wirkung, was bedeutet, dass nur der geänderte Name als ID verwendet werden kann.

    Bean-Objekte abrufen

    Das Abrufen von Bean-Objekten wird auch als Objektinjektion bezeichnet. Es gibt drei Methoden:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    • Attribute-Injektion

    • Beispielanalyse von Lese- und Schreibvorgängen in Java SpringKonstruktor-Injektion
    • Setter-Injektion

    1. Eigenschaftsinjektion

    1.1 AutowiredBeispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Java Spring Lese- und Speicherinstanzanalyse

    Beispielanalyse von Lese- und Schreibvorgängen in Java SpringJava Spring Lese- und Speicherinstanzanalyse

    Java Spring Reading and Storage Instance Analysis注意:当使用name属性重命名后,原本的方法名将失去作用,也就是说只能使用那么修改后的名字作为id了。

    获取bean对象

    获取bean对象也叫对象注入,其有以下3种方法:

    • 属性注入

    • 构造方法注入

    • Setter注入

    1.属性注入

    1.1 Autowired

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    虽然现在看起来没什么问题,但是当我们对同一类型的对象进行了多次注入:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    此时就需要精准定位所选择的对象了,需要类型+名字:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    1.2Resource

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    1.3二者区别

    Resource有个name 属性,可以指定注入bean的名称

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    但Autowired也有个搭配注解,@Qualifier,一样可以指定选择的bean对象,所以二者之间嘛,我觉得打成平手

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    ps:Autowired注解一开始是要进行查询所有类型为所需注入的对象的类型,但Autowired一次只能注入一个对象,因此当统一类型的对象注入多次后会报错。而Qualifier注解本质上是对其所查询的结果进行筛选。

    2.构造方法注入

    还是使用Autowired注解:

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    ps

    Obwohl es jetzt kein Problem zu geben scheint, wenn wir mehrere Operationen an denselben Objekttypen ausführen, Injektionen:

    Beispielanalyse von Lese- und Schreibvorgängen in Java SpringJava Spring Lese- und Speicherinstanzanalyse

    🎜Java Spring-Lese- und Speicherinstanzanalyse🎜🎜Sie benötigen es zu diesem Zeitpunkt, um das genau zu lokalisieren Ausgewähltes Objekt, Sie benötigen Typ+Name:🎜🎜 Java Spring-Lese- und Speicherinstanzanalyse🎜🎜1.2Resource🎜🎜Java Spring Lese- und Speicherinstanzanalyse🎜🎜1.3 Der Unterschied zwischen den beiden🎜🎜Ressource hat ein Namensattribut, das den Namen der injizierten Bean angeben kann🎜🎜Java Spring Reading and Storage Instance Analysis🎜🎜Aber Autowired hat auch eine passende Annotation, @Qualifier, die auch das ausgewählte Bean-Objekt angeben kann, also Ich denke, es ist ein Gleichstand zwischen den beiden " />🎜🎜ps: Die Autowired-Annotation fragt zunächst alle Typen nach den Objekttypen ab, die injiziert werden müssen, Autowired kann jedoch jeweils nur ein Objekt injizieren, sodass bei einem einheitlichen Typ ein Fehler auftritt wird gemeldet, nachdem das Objekt mehrmals injiziert wurde. Die Qualifier-Annotation filtert im Wesentlichen die Ergebnisse ihrer Abfrage. 🎜

    2. Konstruktormethodeninjektion

    🎜🎜Verwenden Sie weiterhin Autowired-Annotationen: 🎜🎜🎜Java Spring Lese- und Speicherinstanzanalyse🎜🎜 Java Spring Reading and Storage Instance Analysis“ />🎜🎜<code>ps</code>: Wenn es nur einen Konstruktor gibt, kann Autowired weggelassen werden🎜🎜aber es kann nicht weggelassen werden, wenn es mehr als zwei gibt🎜🎜🎜🎜<p><img src=

    Setter-Injektion

    oder über Autowired

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    ResourceSetter-Injection wird ebenfalls unterstützt.

    Klassische Interviewfragen

    Was ist der Unterschied zwischen Attributinjektion, Konstruktorinjektion und Setterinjektion?

    Beispielanalyse von Lese- und Schreibvorgängen in Java Spring

    Das obige ist der detaillierte Inhalt vonBeispielanalyse von Lese- und Schreibvorgängen in Java Spring. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

    Erklärung dieser Website
    Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

    Heiße KI -Werkzeuge

    Undresser.AI Undress

    Undresser.AI Undress

    KI-gestützte App zum Erstellen realistischer Aktfotos

    AI Clothes Remover

    AI Clothes Remover

    Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

    Undress AI Tool

    Undress AI Tool

    Ausziehbilder kostenlos

    Clothoff.io

    Clothoff.io

    KI-Kleiderentferner

    Video Face Swap

    Video Face Swap

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

    Heiße Werkzeuge

    Notepad++7.3.1

    Notepad++7.3.1

    Einfach zu bedienender und kostenloser Code-Editor

    SublimeText3 chinesische Version

    SublimeText3 chinesische Version

    Chinesische Version, sehr einfach zu bedienen

    Senden Sie Studio 13.0.1

    Senden Sie Studio 13.0.1

    Leistungsstarke integrierte PHP-Entwicklungsumgebung

    Dreamweaver CS6

    Dreamweaver CS6

    Visuelle Webentwicklungstools

    SublimeText3 Mac-Version

    SublimeText3 Mac-Version

    Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

    Perfekte Zahl in Java Perfekte Zahl in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden zur perfekten Zahl in Java. Hier besprechen wir die Definition, Wie prüft man die perfekte Zahl in Java?, Beispiele mit Code-Implementierung.

    Weka in Java Weka in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden für Weka in Java. Hier besprechen wir die Einführung, die Verwendung von Weka Java, die Art der Plattform und die Vorteile anhand von Beispielen.

    Smith-Nummer in Java Smith-Nummer in Java Aug 30, 2024 pm 04:28 PM

    Leitfaden zur Smith-Zahl in Java. Hier besprechen wir die Definition: Wie überprüft man die Smith-Nummer in Java? Beispiel mit Code-Implementierung.

    Fragen zum Java Spring-Interview Fragen zum Java Spring-Interview Aug 30, 2024 pm 04:29 PM

    In diesem Artikel haben wir die am häufigsten gestellten Fragen zu Java Spring-Interviews mit ihren detaillierten Antworten zusammengestellt. Damit Sie das Interview knacken können.

    Brechen oder aus Java 8 Stream foreach zurückkehren? Brechen oder aus Java 8 Stream foreach zurückkehren? Feb 07, 2025 pm 12:09 PM

    Java 8 führt die Stream -API ein und bietet eine leistungsstarke und ausdrucksstarke Möglichkeit, Datensammlungen zu verarbeiten. Eine häufige Frage bei der Verwendung von Stream lautet jedoch: Wie kann man von einem Foreach -Betrieb brechen oder zurückkehren? Herkömmliche Schleifen ermöglichen eine frühzeitige Unterbrechung oder Rückkehr, aber die Stream's foreach -Methode unterstützt diese Methode nicht direkt. In diesem Artikel werden die Gründe erläutert und alternative Methoden zur Implementierung vorzeitiger Beendigung in Strahlverarbeitungssystemen erforscht. Weitere Lektüre: Java Stream API -Verbesserungen Stream foreach verstehen Die Foreach -Methode ist ein Terminalbetrieb, der einen Vorgang für jedes Element im Stream ausführt. Seine Designabsicht ist

    Zeitstempel für Datum in Java Zeitstempel für Datum in Java Aug 30, 2024 pm 04:28 PM

    Anleitung zum TimeStamp to Date in Java. Hier diskutieren wir auch die Einführung und wie man Zeitstempel in Java in ein Datum konvertiert, zusammen mit Beispielen.

    Java -Programm, um das Kapselvolumen zu finden Java -Programm, um das Kapselvolumen zu finden Feb 07, 2025 am 11:37 AM

    Kapseln sind dreidimensionale geometrische Figuren, die aus einem Zylinder und einer Hemisphäre an beiden Enden bestehen. Das Volumen der Kapsel kann berechnet werden, indem das Volumen des Zylinders und das Volumen der Hemisphäre an beiden Enden hinzugefügt werden. In diesem Tutorial wird erörtert, wie das Volumen einer bestimmten Kapsel in Java mit verschiedenen Methoden berechnet wird. Kapselvolumenformel Die Formel für das Kapselvolumen lautet wie folgt: Kapselvolumen = zylindrisches Volumenvolumen Zwei Hemisphäre Volumen In, R: Der Radius der Hemisphäre. H: Die Höhe des Zylinders (ohne die Hemisphäre). Beispiel 1 eingeben Radius = 5 Einheiten Höhe = 10 Einheiten Ausgabe Volumen = 1570,8 Kubikeinheiten erklären Berechnen Sie das Volumen mithilfe der Formel: Volumen = π × R2 × H (4

    Gestalten Sie die Zukunft: Java-Programmierung für absolute Anfänger Gestalten Sie die Zukunft: Java-Programmierung für absolute Anfänger Oct 13, 2024 pm 01:32 PM

    Java ist eine beliebte Programmiersprache, die sowohl von Anfängern als auch von erfahrenen Entwicklern erlernt werden kann. Dieses Tutorial beginnt mit grundlegenden Konzepten und geht dann weiter zu fortgeschrittenen Themen. Nach der Installation des Java Development Kit können Sie das Programmieren üben, indem Sie ein einfaches „Hello, World!“-Programm erstellen. Nachdem Sie den Code verstanden haben, verwenden Sie die Eingabeaufforderung, um das Programm zu kompilieren und auszuführen. Auf der Konsole wird „Hello, World!“ ausgegeben. Mit dem Erlernen von Java beginnt Ihre Programmierreise, und wenn Sie Ihre Kenntnisse vertiefen, können Sie komplexere Anwendungen erstellen.

    See all articles