Cloud-Lösungen der Zukunft - Testen!

Revolutionäre Cloud-Technologie, ganz ohne versteckte Kosten. Profitieren Sie von unserer Testphase und entdecken Sie umfassende Funktionen. Der Anmeldeprozess ist transparent und unkompliziert. Starten Sie jetzt Ihre Reise in die Cloud - Kostenfrei!

Spring @Service Annotation

Die Spring @Service Annotation ist eine Spezialisierung der @Component Annotation. Die Spring Service Annotation kann nur auf Klassen angewendet werden. Sie wird verwendet, um die Klasse als Dienstanbieter zu markieren.

Die Spring @Service Annotation wird bei Klassen verwendet, die bestimmte Geschäftsfunktionalitäten bereitstellen. Der Spring-Kontext erkennt diese Klassen automatisch, wenn die konfigurationsbasierte und klassenpfad-basierte Scannung verwendet wird.

Spring @Service Beispiel

Lassen Sie uns eine einfache Spring-Anwendung erstellen, in der wir eine Spring-Serviceklasse erstellen. Erstellen Sie ein einfaches Maven-Projekt in Eclipse und fügen Sie folgende Spring Core-Abhängigkeit hinzu.

<dependency>
    <groupId>org.springframework</groupId>
    <artifactId>spring-context</artifactId>
    <version>5.0.6.RELEASE</version>
</dependency>

Unsere endgültige Projektstruktur wird wie das folgende Bild aussehen.

Lassen Sie uns eine Service-Klasse erstellen.

package com.journaldev.spring;

import org.springframework.stereotype.Service;

@Service("ms")
public class MathService {

    public int add(int x, int y) {
        return x + y;
    }
    
    public int subtract(int x, int y) {
        return x - y;
    }
}

Beachten Sie, dass es sich um eine einfache Java-Klasse handelt, die Funktionalitäten zum Addieren und Subtrahieren von zwei Ganzzahlen bereitstellt. Wir können sie also als Dienstanbieter bezeichnen. Wir haben sie mit der @Service Annotation versehen, damit der Spring-Kontext sie automatisch erkennen kann und wir ihre Instanz aus dem Kontext erhalten können. Lassen Sie uns eine Hauptklasse erstellen, in der wir den anmerkungsgesteuerten Spring-Kontext erstellen und die Instanz unserer Serviceklasse erhalten.

package com.journaldev.spring;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

public class SpringMainClass {

    public static void main(String[] args) {
        AnnotationConfigApplicationContext context = new AnnotationConfigApplicationContext();
        context.scan("com.journaldev.spring");
        context.refresh();

        MathService ms = context.getBean(MathService.class);

        int add = ms.add(1, 2);
        System.out.println("Addition von 1 und 2 = " + add);

        int subtract = ms.subtract(2, 1);
        System.out.println("Subtraktion von 2 und 1 = " + subtract);
        
        //schließen des Spring-Kontextes
        context.close();
    }

}

Führen Sie einfach die Klasse als eine Java-Anwendung aus, es wird folgende Ausgabe produzieren.

Jun 05, 2018 3:02:05 PM org.springframework.context.support.AbstractApplicationContext prepareRefresh
INFO: Aktualisierung org.springframework.context.annotation.AnnotationConfigApplicationContext@ff5b51f: Startdatum [Di. Jun 05 15:02:05 IST 2018]; Wurzel der Kontexthierarchie
Addition von 1 und 2 = 3
Subtraktion von 2 und 1 = 1
Jun 05, 2018 3:02:05 PM org.springframework.context.support.AbstractApplicationContext doClose
INFO: Schließen org.springframework.context.annotation.AnnotationConfigApplicationContext@ff5b51f: Startdatum [Di. Jun 05 15:02:05 IST 2018]; Wurzel der Kontexthierarchie


Wenn Sie unsere MathService-Klasse beachten, haben wir den Dienstnamen als „ms“ definiert. Wir können die Instanz von MathService auch mit diesem Namen erhalten. Das Ergebnis bleibt in diesem Fall gleich. Allerdings müssen wir explizites Casting verwenden.

MathService ms = (MathService) context.getBean("ms");

Das ist alles für ein schnelles Beispiel der Spring @Service Annotation.

Starten Sie Ihre kostenlose Testversion heute und verwandeln Sie Ihr Cloud-Erlebnis mit unseren fortschrittlichen Lösungen!

Entfesseln Sie das volle Potenzial Ihrer Cloud-basierten Anwendungen! Unsere Plattform bietet unübertroffene Effizienz, Skalierbarkeit und Zuverlässigkeit, konzipiert, um Ihre Entwicklungsreise voranzutreiben. Verpassen Sie nicht diese Gelegenheit, Ihre Cloud-Dienste zu revolutionieren. Melden Sie sich jetzt für unsere unverbindliche kostenlose Testversion an und erleben Sie den Unterschied, den Spitzentechnologie und Expertenunterstützung in Ihren Projekten machen können. Steigern Sie Ihr Cloud-Computing heute!

Kostenlos testen!