Twitter Youtube Github
Burak Kutbay'ın Kişisel Blog'u |

Type and hit Enter to search

  • Etkinliklerim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • RabbitMQ
  • Hibernate
  • JSP
  • Java 21
  • Java 8
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale
Spring Boot

Spring Boot Dersleri Spring Cache Nasıl Yapılır? Uygulama Örneği

Paylaş

Spring Boot Dersleri‘ne devam ediyoruz.

Spring Boot uygulamalarımızda caching yeteneği kazandırmak için yapılması gerekenlerden bahsedeğim. Örnek bir uygulama yaparak Spring Boot Caching’i kavramaya çalışacağız. Spring Boot uygulamamızın performansını  caching yaparak arttırmak mümkün. Çok fazla sorgulama yapılan uygulamalarda sorgu caching’i yaparak önemli bir performans artışı sağlanabilmektedir.

Spring Boot uygulaması yapalım.

Spring Boot uygulamasına Spring Caching özelliği kazandırmak için maven projesi yapıyorsak bağımlılığımız aşağıdaki gibi olacaktır.

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.java4s</groupId>
  <artifactId>SpringBootCache</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <parent>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-starter-parent</artifactId>
	<version>2.1.3.RELEASE</version>
  </parent>
	
  <dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
     </dependency>
    <dependency>
         <groupId>org.springframework.boot</groupId>
          <artifactId>spring-boot-starter-cache</artifactId>
    </dependency>
 </dependencies>	

 <properties>
   <java.version>1.8</java.version>
 </properties> 
  
</project>

Maven bağımlılığımıza 2.1.3 sürümünü yüklemiş olduk.

Şimdi üye entitymizi oluşturalım. Yapacağımız uygulama Uyenin ad ve soyad bilgilerini tutacak.

public class Uye { 
    private int id;
    private String ad;
    private String soyad;

    public Uye(int id, String ad, String soyad) {
        this.id = id;
        this.ad = ad;
        this.soyad = soyad;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getAd() {
        return ad;
    }

    public void setAd(String ad) {
        this.ad = ad;
    }

    public String getSoyad() {
        return soyad;
    }

    public void setSoyad(String soyad) {
        this.soyad = soyad;
    }
}

Controllerimizi oluşturalım.

@RestController
public class UyeController{

  @RequestMapping("/getUye")
  @Cacheable(value="cacheGetUye")
  public List uyeBilgi() {

     List uyeList =  Arrays.asList(
	new Customer(1,"Ahmet","Veli"),
	new Customer(1,"Mehmet","Ali"));
	    
    return uyeList;
  }
}

Controllerimizin içerisine verilerimiz bulunmakta ilgili uyeBilgi metodumuzdan çıkacak sonucun caching özelliği verebilmek için caching @Cacheable anotasyonu ile işaretlemiş oluyoruz.

Uygulamızı çalıştırmak için main methodumuzu yazalım.

@SpringBootApplication
@EnableCaching
public class SpringBootApp {
	public static void main(String[] args) {

		 SpringApplication.run(SpringBootApp.class, args);

	}
}

Main methodumuza @EnableCaching yazarak uygulamımıza bu özelliği kazandırmış oluyoruz.  Uygulamamızdan rest erişimine açık olan üye bilgilerine her defasında erişiminde cachelenmiş olan verilerden getirecektir.

İstediğimiz zaman bu özelliği devre dışı bırakmak istersek Caching ile işaretlediğimiz tüm anotasyonları silmemize gerek yok. Spring Boot uygulamamızın application.properties dosyasına;

spring.cache.type=none

yazmak yeterli olacaktır.



Tüm Spring UygulamalarıDiğer Spring Proje Örneklerine Ulaşmak için tıklayınız.


Önceki Ders: Thymeleaf Ajax Proje Uygulama Örneği
Spring Boot Dersleri
Sonraki Ders: Spring Boot Uygulaması TimeZone Değiştirmek

Tags:

spring boot applicationspring boot cachingspring boot derslerispring boot uygulamaspring cachingspring derslerispring uygulama örneği

Paylaş

Diğer Yazılar

PrimeFaces Dersleri
Previous

Primefaces Calendar @ PostConstruct Anotasyonu Kullanarak Default Değer Vermek

blank
Next

JasperReport iReport 5.6.0 Java 8 ve Sonrası Açılmama Sorunu Çözümü

Next
blank
19 Mart 2019

JasperReport iReport 5.6.0 Java 8 ve Sonrası Açılmama Sorunu Çözümü

Previews
19 Mart 2019

Primefaces Calendar @ PostConstruct Anotasyonu Kullanarak Default Değer Vermek

PrimeFaces Dersleri

No Comment! Be the first one.

Bir yanıt yazın Yanıtı iptal et

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgini Çekebilir

Chaos Monkey Spring Boot Uygulama Ornegi

Chaos Monkey Nedir? #1 Uygulamanızın Sınırlarını Test Edin

TestContainers Nedir Spring Boot MongoDB Uygulama Örneği

TestContainers ile Spring Boot & MongoDB Test İşlemleri

Spring Boot Dersleri @ConditionalOnExpression Uygulama Ornegi

Spring Boot @ConditionalOnExpression Nedir? Uygulama Örneği

Spring Boot Dersleri Content Negotiation Uygulama Örneği

Spring Boot Content Negotiation XML – JSON Uygulama Örneği

Burak Kutbay'ın Kişisel Blog'u |

© 2008 - ∞, Her hakkı saklıdır.

Link

  • Hakkımda
  • İletişim
  • Arşiv

Kategori

Cloud
Node.js
Java 24
Android
Struts
Röportaj
Gradle
Amazon Web Services
Vue.js
Video
Redis
Spring Boot 3.0
Debezium
Mikroservis Mimarisi
Spring Native
Spring Cloud Stream
Etkinlikler
XCode
JPA
Objective C
iPhone Uygulama Geliştirme
PostgreSQL
Spring Security
MongoDB
Java 21
Spring Data
Apache Kafka
Yaptığım Projeler
Servlet
Git
Maven
Design Patterns
DevOps
Linux
Spring Jdbc Template
RabbitMQ
JDBC
PrimeFaces
Manset
Google
Spring
Spring MVC
Spring Cloud
OCA Java SE 8
Quarkus
Spring Core
Microsoft
Veritabanı
Java SE
Tanıyalım
Hibernate
Teknoloji
Okuduğum Kitaplar
Java Server Faces
Yazılım Mühendisliği
C Sharp
Spring Boot
Java
Günlüğüm
Java Server Page
Makale

Takip Et

Twitter Youtube Github
  • Etkinliklerim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • RabbitMQ
  • Hibernate
  • JSP
  • Java 21
  • Java 8
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale