logo

Spring Boot Ek Açıklamaları

Spring Boot Ek Açıklamaları, bir program hakkında veri sağlayan bir meta veri biçimidir. Başka bir deyişle, ek açıklamalar sağlamak için kullanılır tamamlayıcı bir program hakkında bilgi. Geliştirdiğimiz uygulamanın bir parçası değil. Açıklama ekledikleri kodun işleyişi üzerinde doğrudan bir etkisi yoktur. Derlenen programın eylemini değiştirmez.

Bu bölümde bazı önemli konuları tartışacağız. Spring Boot Ek Açıklaması Bunu daha sonra bu eğitimde kullanacağız.

Çekirdek Spring Çerçeve Açıklamaları

@Gerekli: Şunlar için geçerlidir: fasulye ayarlayıcı yöntemi. Açıklamalı fasulyenin yapılandırma zamanında gerekli özellikle doldurulması gerektiğini belirtir, aksi takdirde bir istisna atar Bean Başlatma İstisnası .

Örnek

 public class Machine { private Integer cost; @Required public void setCost(Integer cost) { this.cost = cost; } public Integer getCost() { return cost; } } 

@Otomatik kablolu: Spring, @Autowired açıklaması sağlayarak açıklama tabanlı otomatik kablolama sağlar. Ayarlayıcı yöntemler, örnek değişken ve yapıcı üzerinde yay çekirdeğini otomatik olarak bağlamak için kullanılır. @Autowired ek açıklamasını kullandığımızda, yay kabı, veri tipini eşleştirerek fasulyeyi otomatik olarak bağlar.

Örnek

 @Component public class Customer { private Person person; @Autowired public Customer(Person person) { this.person=person; } } 

@Yapılandırma: Bu, sınıf düzeyinde bir açıklamadır. Spring Containers tarafından fasulye tanımlarının kaynağı olarak kullanılan @Configuration ile açıklamalı sınıf.

Örnek

 @Configuration public class Vehicle { @BeanVehicle engine() { return new Vehicle(); } } 

@ComponentScan: Fasulye için bir paketi taramak istediğimizde kullanılır. @Configuration ek açıklamasıyla birlikte kullanılır. Spring Components'ın taranacağı temel paketleri de belirtebiliriz.

Örnek

 @ComponentScan(basePackages = 'com.javatpoint') @Configuration public class ScanComponent { // ... } 

@Fasulye: Bu, yöntem düzeyinde bir açıklamadır. XML etiketinin bir alternatifidir. Spring Container tarafından yönetilecek bir fasulye üretme yöntemini anlatır.

Örnek

 @Bean public BeanExample beanExample() { return new BeanExample (); } 

Spring Framework Stereotip Açıklamaları

@Bileşen: Bu, sınıf düzeyinde bir açıklamadır. Java sınıfını fasulye olarak işaretlemek için kullanılır. Açıklamalı bir Java sınıfı @Bileşen sınıf yolu sırasında bulunur. Spring Framework bunu alır ve uygulama bağlamında yapılandırır. Bahar Fasulyesi .

Örnek

 @Component public class Student { ....... } 

@Denetleyici: @Controller sınıf düzeyinde bir açıklamadır. Bu bir uzmanlık alanıdır @Bileşen . Bir sınıfı web isteği işleyicisi olarak işaretler. Genellikle web sayfalarını sunmak için kullanılır. Varsayılan olarak hangi rotanın yönlendirileceğini belirten bir dize döndürür. Çoğunlukla birlikte kullanılır @RequestMapping dipnot.

Örnek

 @Controller @RequestMapping('books') public class BooksController { @RequestMapping(value = '/{name}', method = RequestMethod.GET) public Employee getBooksByName() { return booksTemplate; } } 

@Hizmet: Ayrıca sınıf düzeyinde de kullanılmaktadır. Spring'e sınıfın aşağıdakileri içerdiğini söyler: iş mantığı .

Örnek

 package com.javatpoint; @Service public class TestService { public void service1() { //business code } } 

@Depo: Bu, sınıf düzeyinde bir açıklamadır. Depo bir DAO'lar (Veri Erişim Nesnesi) veritabanına doğrudan erişir. Depo, veritabanıyla ilgili tüm işlemleri yapar.

 package com.javatpoint; @Repository public class TestRepository { public void delete() { //persistence code } } 

Spring Boot Ek Açıklamaları

    @EnableAutoConfiguration:Sınıf yolunda bulunan fasulyeyi otomatik olarak yapılandırır ve yöntemleri çalıştıracak şekilde yapılandırır. Bu ek açıklamanın kullanımı Spring Boot 1.2.0 sürümünde azaltılmıştır çünkü geliştiriciler ek açıklamaya bir alternatif sunmuştur; @SpringBootApplication .@SpringBootApplication:Üç ek açıklamanın birleşimidir @EnableAutoConfiguration, @ComponentScan, Ve @Yapılandırma .

Bahar MVC ve REST Ek Açıklamaları

    @RequestMapping:Haritalamak için kullanılır web istekleri . Gibi birçok isteğe bağlı öğeye sahiptir tüketir, başlık, yöntem, ad, parametreler, yol, üretir , Ve değer . Bunu hem sınıf hem de yöntemle birlikte kullanırız.

Örnek

 @Controller public class BooksController { @RequestMapping('/computer-science/books') public String getAllBooks(Model model) { //application code return 'bookList'; } 
    @GetMapping:Haritayı çıkarır HTTP AL belirli işleyici yöntemine ilişkin istekler. Bir web hizmeti uç noktası oluşturmak için kullanılır. getirilen Aşağıdakileri kullanmak yerine kullanılır: @RequestMapping(method = requestMethod.GET) @PostMapping:Haritayı çıkarır HTTP POST belirli işleyici yöntemine ilişkin istekler. Bir web hizmeti uç noktası oluşturmak için kullanılır. yaratır Aşağıdakileri kullanmak yerine kullanılır: @RequestMapping(method = requestMethod.POST) @PutMapping:Haritayı çıkarır HTTP PUT'u belirli işleyici yöntemine ilişkin istekler. Bir web hizmeti uç noktası oluşturmak için kullanılır. yaratır veya güncellemeler Aşağıdakileri kullanmak yerine kullanılır: @RequestMapping(method = requestMethod.PUT) @DeleteMapping:Haritayı çıkarır HTTP SİL belirli işleyici yöntemine ilişkin istekler. Bir web hizmeti uç noktası oluşturmak için kullanılır. siler kaynak. Aşağıdakileri kullanmak yerine kullanılır: @RequestMapping(method = requestMethod.DELETE) @PatchMapping:Haritayı çıkarır HTTP YAMA belirli işleyici yöntemine ilişkin istekler. Aşağıdakileri kullanmak yerine kullanılır: @RequestMapping(method = requestMethod.PATCH) @RequestBody:alışkın olduğu bağlamak Yöntem parametresindeki bir nesneyle HTTP isteği. Dahili olarak kullanır HTTP Mesaj Dönüştürücüleri isteğin gövdesini dönüştürmek için. Bir yöntem parametresine açıklama eklediğimizde @RequestBody, Spring çerçevesi, gelen HTTP istek gövdesini bu parametreye bağlar.@ResponseBody:Yöntem dönüş değerini yanıt gövdesine bağlar. Spring Boot Framework'e bir nesneyi JSON ve XML formatına döndürmesini serileştirmesini söyler.@PathVariable:URI'den değerleri çıkarmak için kullanılır. URL'nin bir yol değişkeni içerdiği RESTful web hizmeti için en uygun olanıdır. Bir yöntemde birden fazla @PathVariable tanımlayabiliriz.@RequestParam:URL'den sorgu parametrelerini çıkarmak için kullanılır. Aynı zamanda şu şekilde de bilinir: sorgu parametresi . Web uygulamaları için en uygun olanıdır. URL'de sorgu parametresi yoksa varsayılan değerleri belirtebilir.@RequestHeader:HTTP istek başlıkları hakkındaki ayrıntıları almak için kullanılır. Bu ek açıklamayı şu şekilde kullanıyoruz: yöntem parametresi . Ek açıklamanın isteğe bağlı öğeleri şunlardır: ad, gerekli, değer, varsayılanDeğer. Başlıktaki her detay için ayrı açıklamalar belirtmeliyiz. Bir yöntemde bunu birden çok kez kullanabiliriz@RestController:Şunların birleşimi olarak düşünülebilir @Denetleyici Ve @ResponseBody ek açıklamalar . @RestController ek açıklamasının kendisi @ResponseBody ek açıklamasıyla açıklanmıştır. @ResponseBody ile her yönteme açıklama ekleme ihtiyacını ortadan kaldırır.@RequestAttribute:Bir yöntem parametresini istek niteliğine bağlar. Bir denetleyici yönteminden istek özniteliklerine kolay erişim sağlar. @RequestAttribute notasyonu yardımıyla sunucu tarafında doldurulan nesnelere erişebiliriz.

Not: Yukarıdaki ek açıklamaların tümünü RESTful Web Hizmetleri Eğitimimizde gerçek dünyadan örneklerle kullandık.