Spring Boot Annotations sind eine Form von Metadaten, die Daten über ein Programm bereitstellen. Mit anderen Worten: Anmerkungen dienen der Bereitstellung ergänzend Informationen zu einem Programm. Es ist nicht Teil der Anwendung, die wir entwickeln. Es hat keinen direkten Einfluss auf die Funktionsweise des mit Anmerkungen versehenen Codes. Die Aktion des kompilierten Programms wird dadurch nicht geändert.
In diesem Abschnitt werden wir einige wichtige Themen besprechen Spring Boot-Anmerkung die wir später in diesem Tutorial verwenden werden.
Anmerkungen zum Kern des Spring-Frameworks
@Erforderlich: Es gilt für die Bohne Setter-Methode. Es gibt an, dass die annotierte Bean zum Zeitpunkt der Konfiguration mit der erforderlichen Eigenschaft gefüllt werden muss, andernfalls wird eine Ausnahme ausgelöst BeanInitilizationException .
Beispiel
public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } }
@Autowired: Spring bietet eine annotationsbasierte automatische Verdrahtung durch die Bereitstellung der @Autowired-Annotation. Es wird verwendet, um Spring Beans automatisch mit Setter-Methoden, Instanzvariablen und Konstruktoren zu verbinden. Wenn wir die Annotation @Autowired verwenden, verdrahtet der Spring-Container die Bean automatisch, indem er den Datentyp abgleicht.
Beispiel
@Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } }
@Aufbau: Es handelt sich um eine Annotation auf Klassenebene. Die mit @Configuration annotierte Klasse, die von Spring Containers als Quelle für Bean-Definitionen verwendet wird.
Beispiel
@Configuration public class Vehicle { @BeanVehicle engine() { return new Vehicle(); } }
@ComponentScan: Es wird verwendet, wenn wir ein Paket nach Bohnen durchsuchen möchten. Es wird mit der Annotation @Configuration verwendet. Wir können auch die Basispakete angeben, die nach Spring-Komponenten durchsucht werden sollen.
Beispiel
@ComponentScan(basePackages = 'com.javatpoint') @Configuration public class ScanComponent { // ... }
@Bohne: Es handelt sich um eine Annotation auf Methodenebene. Es ist eine Alternative zum XML-Tag. Es weist die Methode an, eine Bean zu erzeugen, die von Spring Container verwaltet werden soll.
SQL-Datentypen
Beispiel
@Bean public BeanExample beanExample() { return new BeanExample (); }
Anmerkungen zum Spring Framework-Stereotyp
@Komponente: Es handelt sich um eine Annotation auf Klassenebene. Es wird verwendet, um eine Java-Klasse als Bean zu markieren. Eine mit Anmerkungen versehene Java-Klasse @Komponente wird während des Klassenpfads gefunden. Das Spring Framework greift es auf und konfiguriert es im Anwendungskontext als Frühlingsbohne .
Beispiel
@Component public class Student { ....... }
@Regler: Der @Controller ist eine Annotation auf Klassenebene. Es ist eine Spezialisierung von @Komponente . Es markiert eine Klasse als Web-Request-Handler. Es wird häufig zur Bereitstellung von Webseiten verwendet. Standardmäßig wird eine Zeichenfolge zurückgegeben, die angibt, welche Route umgeleitet werden soll. Es wird hauptsächlich mit verwendet @RequestMapping Anmerkung.
Beispiel
@Controller @RequestMapping('books') public class BooksController { @RequestMapping(value = '/{name}', method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } }
@Service: Es wird auch auf Klassenebene verwendet. Es teilt dem Frühling mit, dass die Klasse das enthält Geschäftslogik .
Beispiel
package com.javatpoint; @Service public class TestService { public void service1() { //business code } }
@Repository: Es handelt sich um eine Annotation auf Klassenebene. Das Repository ist ein DAOs (Data Access Object), die direkt auf die Datenbank zugreifen. Das Repository führt alle Vorgänge im Zusammenhang mit der Datenbank aus.
package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } }
Spring Boot-Anmerkungen
Spring MVC- und REST-Anmerkungen
Beispiel
@Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; }