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

Type and hit Enter to search

  • Eğitim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • Spring Core
  • Spring Örnekleri
  • Hibernate
  • Java Server Pages
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • Java 8
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale
Spring MVC

Spring MVC Form İşlemleri ModelAttribute Kullanımı

Paylaş

Spring MVC Dersleri‘ne devam ediyoruz.

Spring MVC ile yapacağımız web uygulamalarında bolca kullanacağımız form işlemlerini yakından inceleyeceğiz. Spring MVC ile Form İşlemleri kullanarak dinamik web sayfaları ile etkileşime geçebilmekteyiz.

ModelAttribute anotasyonu kullanarak web sayfamız ile backend arasında veriler arasında iletişimi sağlamaktadır. Controller kullanarak verileri almaktayız. Şimdi bir örnek ile açıklayalım. Bu örneğimizde basit bir veri girişi olan form oluşturup verilerimizi backend tarafına ModelAttribute kullanarak alacağız.

Örneğimiz bir üye kayıt formu yapmak olacak.

public class Customer {
   private Integer age;
   private String name;

   public void setAge(Integer age) {
      this.age = age;
   }
   public Integer getAge() {
      return age;
   }
   public void setName(String name) {
      this.name = name;
   }
   public String getName() {
      return name;
   }

}

Modelimizi oluşturduk.

@Controller
public class CustomerController {

   @ModelAttribute("customer")
   public Customer setup() {
      return new Customer();
   }

   @RequestMapping(value = "/customer", method = RequestMethod.GET)
   public ModelAndView customer() {
      return new ModelAndView("customer", "command", new Customer());
   }

   @RequestMapping(value = "/addCustomer", method = RequestMethod.POST)
      public String addCustomer(@ModelAttribute("Customer")Customer customer, ModelMap model) {
      model.addAttribute("name", customer.getName());
      model.addAttribute("age", customer.getAge());
      
      return "result";
   }
}

Controllerimizi ekledik ve ModelAttribute anotasyonu ile kontrol edebileceğimiz Customer beanimizi tanımladık. ModelAttribute new Customer diyerek boş bir Customer oluşturuyoruz bu nesne sayesinde jsp sayfamızdan controllere aktarabilmekte ve yönetilebilmekteyiz.

<beans xmlns = "http://www.springframework.org/schema/beans"
   xmlns:context = "http://www.springframework.org/schema/context"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://www.springframework.org/schema/beans     
   http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
   http://www.springframework.org/schema/context 
   http://www.springframework.org/schema/context/spring-context-3.0.xsd">

   <context:component-scan base-package = "com.burakkutbay" />

   <bean class = "org.springframework.web.servlet.view.InternalResourceViewResolver">
      <property name = "prefix" value = "/WEB-INF/jsp/" />
      <property name = "suffix" value = ".jsp" />
   </bean>
 
</beans>

Servletimizi oluşturduk. Şimdi web sayfamızı oluşturalım.

<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
   <head>
      <title>Burak KUTBAY</title>
   </head>

   <body>
   
      <form:form method = "POST" action = "/Customer/addCustomer">
         <table>
            <tr>
               <td><form:label path = "name">Name</form:label></td>
               <td><form:input path = "name" /></td>
            </tr>
            <tr>
               <td><form:label path = "age">Age</form:label></td>
               <td><form:input path = "age" /></td>
            </tr>
            <tr>
               <td colspan = "2">
                  <input type = "submit" value = "Submit"/>
               </td>
            </tr>
         </table>  
      </form:form>
   </body>
   
</html>

Jsp sayfamızı oluşturduk. Form tagı ile oluşturduğumuz formdaki verinin nasıl gönderileceğini ve hangi yolu kullanarak hangi url’ye gideceğini action ile belirttik.

Şimdi kaydedilen bilgiler sonrasında oluşturulan müşteri bilgisini gösteren sayfamızı oluşturalım.

<%@page contentType = "text/html;charset = UTF-8" language = "java" %>
<%@taglib uri = "http://www.springframework.org/tags/form" prefix = "form"%>
<html>
   <head>
      <title>Burak KUTBAY Blog</title>
   </head>

   <body>
      <table>
         <tr>
            <td>Name</td>
            <td>${name}</td>
         </tr>
         <tr>
            <td>Age</td>
            <td>${age}</td>
         </tr>
      </table>  
   </body>
   
</html>

Model Attribute anotasyonu kullanarak ön sayfamızdan verileri alıp yönetebilmekteyiz.

Önceki Ders: @PathVariable Kullanımı Spring MVC Dersleri Sonraki Ders: Form Validation @InitBinder Kullanımı

Tags:

modelattributespring mvcSpring MVC Derslerispring mvc örnek

Paylaş

Diğer Yazılar

Previous

Hibernate Türkçe Karakter Sorunu ve Çözümü

Spring Dersleri
Next

Spring MVC Form İşlemleri Form Validation @InitBinder Kullanımı

Next
Spring Dersleri
06 Şubat 2018

Spring MVC Form İşlemleri Form Validation @InitBinder Kullanımı

Previews
10 Ocak 2018

Hibernate Türkçe Karakter Sorunu ve Çözümü

blank

One Comment

  1. Furkan dedi ki:
    25 Ekim 2020, 00:09

    Merhaba yaptığınız örnekte @ModelAttribute annotation’u kullanmadan çalıştırdığımda da sonuç normal bir şekilde çalışıyor.Bu annotation tam olarak neden kullanılıyor acaba?

    Cevapla

Bir cevap yazın Cevabı iptal et

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

İlgini Çekebilir

Spring Dersleri

Spring MVC Dersleri

Spring Dersleri

Spring MVC Dersleri RequestMapping Kullanımı

Spring Dersleri

Spring Mvc DispatcherServlet Nedir?

Spring Dersleri

Spring MVC Dersleri – Spring MVC Nedir?

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

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

Link

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

Kategori

Cloud
Amazon Web Services
Vue.js
Gradle
Node.js
Android
Struts
Redis
Röportaj
Spring Data
Spring Cloud Stream
XCode
Debezium
Mikroservis Mimarisi
Video
Spring Native
iPhone Uygulama Geliştirme
Objective C
JPA
Spring Security
PostgreSQL
Apache Kafka
Git
Servlet
Yaptığım Projeler
Maven
Design Patterns
DevOps
Linux
RabbitMQ
PrimeFaces
JDBC
Spring Jdbc Template
Spring
Spring MVC
Manset
Google
Spring Cloud
OCA Java SE 8
Spring Core
Quarkus
Microsoft
Veritabanı
Tanıyalım
Java SE
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
  • Eğitim
  • Quarkus
  • Spring Cloud
  • Spring Boot
  • Spring JDBC Template
  • Spring MVC
  • Spring Core
  • Spring Örnekleri
  • Hibernate
  • Java Server Pages
  • Java Server Faces
  • PrimeFaces
  • Servlet
  • JDBC
  • JSTL
  • Java 8
  • / Diğer
    • Ünlü Bilişimciler
    • C Sharp
    • Kütüphane
    • Makale