Einige häufig verwendete Anmerkungen und die Verwendung von Springboot

@Bean (destroyMethod = "close" ) // destroy-method = "close" Die Funktion von destroy-method = "close" besteht darin, die Verbindung wieder in den Datenpool zu stellen, wenn die Datenbankverbindung nicht verwendet wird, um die nächste zu erleichtern Anruf.

@Value ("") // Liefert den Eigenschaftswert in der Datei application.properties

@Component ("") // Instanziiere gewöhnliches Pojo in den Federcontainer, was <bean id = "" class = ""> in der Konfigurationsdatei entspricht

@Service // Wird zur Darstellung der Geschäftsschicht verwendet

@Repository // Wird zum Markieren von Datenbankzugriffskomponenten verwendet, d. H. Der Dao-Ebene

@RestController //i.e. @ResponseBody und @Controller, die zum Kommentieren der Steuerebene verwendet werden

@ConfigurationProperties
Spring Boot versucht, die externe Konfiguration standardmäßig mit JSR-303 zu überprüfen (sofern es sich im Klassenpfad befindet).
Sie können Ihrer @ ConfigurationProperties-Klasse problemlos Anmerkungen zu JSR-303-Einschränkungen für javax.validation hinzufügen:

@Component
@ConfigurationProperties(prefix="connection")
public class ConnectionSettings {
@NotNull
private InetAddress remoteAddress;
// ... getters and setters
}

@Profiles
Spring Profiles bietet eine Möglichkeit, die Anwendungskonfiguration zu isolieren und diese Konfigurationen nur in bestimmten Umgebungen wirksam werden zu lassen.

Jede @Component oder @Configuration kann mit @Profile markiert werden, wodurch die Zeit zum Laden begrenzt wird.

@Configuration
@Profile("prod")
public class ProductionConfiguration {
    // ...
}

@PathVariable: Pfadvariable


. Der Parameter muss mit dem Namen in geschweiften Klammern übereinstimmen

RequestMapping("user/get/mac/{macAddress}")
public String getByMacAddress(@PathVariable String macAddress){
  //do something;
}

 

@RequestMapping:
RequestMapping ist eine Anmerkung zur Verarbeitung der Anforderungsadressenzuordnung, die für Klassen oder Methoden verwendet werden kann. Wird für Klassen verwendet, bedeutet dies, dass alle Methoden in der Klasse, die auf Anforderungen antworten, diese Adresse als übergeordneten Pfad verwenden.
Die Annotation hat sechs Attribute:
params : Geben Sie an, dass die Anforderung bestimmte Parameterwerte enthalten muss, bevor die Methode verarbeitet wird.
Header: Die angegebene Anforderung muss bestimmte angegebene Headerwerte enthalten, damit die Methode die Anforderung verarbeiten kann.
Wert: Geben Sie die tatsächliche Adresse der Anforderung an. Die angegebene Adresse kann URI-Vorlagenmodus sein.
Methode: Geben Sie den Methodentyp der Anforderung an. GET, POST, PUT, DELETE usw.
Verbrauch: Geben Sie den übermittelten Inhaltstyp an (Inhaltstyp). Für die Verarbeitung der Anforderung, z. B. application / json, text / html
, wird


Folgendes erstellt: Gibt den zurückzugebenden Inhaltstyp an. Nur wenn der Typ (Accept) im Anforderungsheader den angegebenen Typ enthält, wird @RequestParam: verwendet, das vorne verwendet wird der Methodenparameter.

@RequestParam String a =request.getParameter("a")。

 

Globale Ausnahmebehandlung

@ControllerAdvice: Enthält @Component. Kann gescannt werden. Behandeln Sie Ausnahmen einheitlich.

@ExceptionHandler (Exception.class): Wird für die Methode verwendet, um anzugeben, dass die folgende Methode ausgeführt wird, wenn diese Ausnahme auftritt .

@EnableAutoConfiguration:
Lassen Sie Spring Boot das Spring-Framework automatisch basierend auf den von der Anwendung deklarierten Abhängigkeiten konfigurieren, die im Allgemeinen der Hauptklasse hinzugefügt werden.

@AutoWired:
byType-Methode. Verwenden Sie die konfigurierte Bean, um die Zusammenstellung von Attributen und Methoden abzuschließen. Sie kann Variablen, Methoden und Konstruktoren von Klassenmitgliedern mit Anmerkungen versehen, um die Arbeit der automatischen Zusammenstellung abzuschließen.
Wenn (erforderlich = falsch) hinzugefügt wird, wird kein Fehler gemeldet, auch wenn die Bean nicht gefunden wird.

@Qualifier:
Wenn mehrere Beans desselben Typs vorhanden sind, können Sie @Qualifier ("Name") angeben. Verwenden Sie @Resource (name = "name", type = "type") in Verbindung mit @Autowired

:

Wenn in Klammern kein Inhalt enthalten ist, lautet der Standardwert byName. Machen Sie ähnliche Dinge mit @Autowired.

@EnableTransactionManagemetn (proxyTargetClass = true) // Deaktivieren Sie den dynamischen JDK-Proxy-Mechanismus

 

 

Ich denke du magst

Origin blog.csdn.net/pengyiccb/article/details/80902206
Empfohlen
Rangfolge