Home / Spring Framework / Spring Controller Ekleme

Spring Controller Ekleme

Spring kütüphanesi ile uygulama geliştirirken ilk yapacağımız işlemlerin başında Controller işlemleri gelmektedir. Bir controller eklemek ve bunu view edebilmek için birçok yöntem mevcuttur. Burada anlatacağım yöntem GET metodu ile gelen parametreyi çekip ona göre Thymeleaf kullanarak view edebilen yöntemdir.

Bu yöntemi kullanmak için Maven tabanlı projenize Thymeleaf eklemeniz gereklidir.

Örnek bir yeni controller java dosyamız:

@Controller
@RequestMapping("/")
public class Index {

    @GetMapping("/index")
    public String home(){
        return "index/home";
    }
}

Yukarıdaki koddan çıkaracağız sonuca göre; view için belirlediğimiz klasörümüz içideki index klasörüne home.html dosyamız view edilmektedir ki aşağıdaki gibi bir dosya ağacı yapısı olması gereklidir.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>Deneme Tahtası</h1>
<p></p>
</body>
</html>

  • resources
    • templates
      • index
        • home.html

Görüldüğü gibi controller içerisinde herhangi bir parametre yoktur. Yani örnek verecek olursak kod kısmından bir veriyi view kısmına gönderemiyoruz. Controller kısmında bir Model parametresi oluşturup buna attribute ekleyerek view kısmına göndermek için aşağıdaki gibi bir revizyona ihtiyacımız vardır.

 @GetMapping("/index")
    public String home(Model model){
        model.addAttribute("item1","Deneme");
        return "index/home";
    }

Yukarıdaki kodda görüldüğü gibi model isminde bir Model tanımlaması parametre olarak girilmiş bu parametreye ise item1 adında bir attribute eklenmiştir. Şimdi de bunu Thymeleaf kullanarak view da göstermeyi görelim bunun içinde ilk oluşturduğumuz html de bir revizyon yapmamız gereklidir.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:th="http://www.thymeleaf.org">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>Deneme Tahtası</h1>
<p th:text="${item1}"></p>
</body>
</html>

Bu şekilde controller ile view kısmına item1 ögesini göndermiş ve view etmiş olduk.

Etiketlendi:

Cevap bırakın

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