Java'daki POJO, Düz Eski Java Nesnesi anlamına gelir. Herhangi bir özel sınırlamaya tabi olmayan sıradan bir nesnedir. POJO dosyası herhangi bir özel sınıf yoluna ihtiyaç duymaz. Bir Java programının okunabilirliğini ve yeniden kullanılabilirliğini artırır.
POJO'lar artık kolay bakımları nedeniyle geniş çapta kabul görmektedir. Okunması ve yazılması kolaydır. Bir POJO sınıfının özellikler ve yöntemler için herhangi bir adlandırma kuralı yoktur. Hiçbir şeye bağlı değil Java Çerçeve; herhangi bir Java Programı bunu kullanabilir.
POJO terimi şu şekilde tanıtıldı: Martin Fowler (Amerikalı bir yazılım geliştiricisi) 2000 yılında. Java'da EJB 3.0 by sun microsystem'den edinilebilir.
Genellikle bir POJO sınıfı değişkenleri ve bunların Alıcılarını ve Ayarlayıcılarını içerir.
POJO sınıfları Beans'e benzer çünkü her ikisi de okunabilirliği ve yeniden kullanılabilirliği artırmak için nesneleri tanımlamak için kullanılır. Aralarındaki tek fark, Bean Dosyalarının bazı kısıtlamaları olması, ancak POJO dosyalarının herhangi bir özel kısıtlamaya sahip olmamasıdır.
Örnek:
POJO sınıfı nesne varlıklarını tanımlamak için kullanılır. Örneğin nesnelerini tanımlamak için bir Çalışan POJO sınıfı oluşturabiliriz.
Aşağıda Java POJO sınıfının bir örneği verilmiştir:
Çalışan.java:
// POJO class Exmaple package Jtp.PojoDemo; public class Employee { private String name; private String id; private double sal; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; } public double getSal() { return sal; } public void setSal(double sal) { this.sal = sal; } }
Yukarıdaki çalışan sınıfı, çalışan POJO sınıfının bir örneğidir. Eclipse üzerinde çalışıyorsanız, Java Programına sağ tıklayıp şuraya giderek kolayca Ayarlayıcılar ve Alıcılar oluşturabilirsiniz. Kaynak-> Alıcılar ve Ayarlayıcılar Oluşturun.
Java Programına sağ tıklayın ve Alıcılar ve Ayarlayıcılar Oluştur'u seçin.
Şimdi, Oluştur Oluştur penceresinin altında verilen seçenek. Ayarlayıcıları ve alıcıları otomatik olarak oluşturacaktır.
c++'da miras
POJO sınıfının özellikleri
Aşağıda POJO sınıfının bazı özellikleri verilmiştir:
- POJO sınıfı herkese açık olmalıdır.
- Genel bir varsayılan kurucuya sahip olmalıdır.
- Argüman yapıcısına sahip olabilir.
- Diğer Java Programlarının nesne değerlerine erişebilmesi için tüm nesnelerin bazı genel Alıcılara ve Ayarlayıcılara sahip olması gerekir.
- POJO Sınıfındaki nesne, özel, genel, korumalı gibi herhangi bir erişim değişikliğine sahip olabilir. Ancak projenin güvenliğinin artırılması için tüm örnek değişkenlerin özel olması gerekir.
- Bir POJO sınıfı önceden tanımlanmış sınıfları genişletmemelidir.
- Önceden belirlenmiş arayüzleri uygulamamalıdır.
- Önceden belirlenmiş herhangi bir açıklama içermemelidir.
POJO Sınıfının Çalışması
POJO sınıfı, İş mantığını kapsayan bir nesne sınıfıdır. Bir MVC mimarisinde Denetleyici, verilere erişmek için POJO sınıfıyla iletişim kuran iş mantığıyla etkileşime girer.
java ile başlar
Aşağıda POJO sınıfının çalışması verilmiştir.
POJO sınıfı bir Java Programında nasıl kullanılır?
POJO sınıfı, diğer Java Programlarındaki nesneleri kullanmak için oluşturulmuştur. POJO sınıfının en büyük avantajı, diğer Java programlarında her zaman nesne oluşturmak zorunda kalmamamızdır. Basitçe get() ve set() yöntemlerini kullanarak nesnelere erişebiliriz.
POJO sınıfından nesnelere erişmek için aşağıdaki adımları izleyin:
- POJO sınıfı nesneleri oluşturma
- Set() yöntemini kullanarak değerleri ayarlayın
- Get() yöntemini kullanarak değerleri alın
Örneğin aynı paket içerisinde bir MainClass.java sınıf dosyası oluşturun ve içine aşağıdaki kodu yazın:
MainClass.java:
//Using POJO class objects in MainClass Java program package Jtp.PojoDemo; public class MainClass { public static void main(String[] args) { // Create an Employee class object Employee obj= new Employee(); obj.setName('Alisha'); // Setting the values using the set() method obj.setId('A001'); obj.setSal(200000); System.out.println('Name: '+ obj.getName()); //Getting the values using the get() method System.out.println('Id: ' + obj.getId()); System.out.println('Salary: ' +obj.getSal()); } }
Çıktı:
Name: Alisha Id: A001 Salary: 200000.0
Yukarıdaki örnekte MainClass.java'da POJO sınıfı özelliklerine eriştiğimizi görebiliriz.
POJO, Bean Class'a benzer, bu nedenle insanlar sıklıkla aralarında kafa karıştırır; POJO ve Bean arasındaki farkı görelim.
Java Fasulyesi
Java Fasulyesi sınıfı aynı zamanda birkaç nesneyi tek bir dosyada (Bean Class File) kapsülleyen bir nesne sınıfıdır. POJO ve Bean arasında bazı farklar var.
Özetle Java POJO ve Bean:
- Tüm Bean dosyaları POJO olabilir ancak tüm POJO'lar fasulye değildir.
- Tüm Bean dosyaları Serileştirilebilir bir arayüz uygulayabilir ancak tüm POJO'lar Serileştirilebilir bir arayüz uygulayamaz.
- Alanların tam kontrolüne sahip olmak için her iki mülkün de özel olması gerekir.
- Özellikler, diğer Java programlarında bunlara erişebilmek için alıcılara ve ayarlayıcıya sahip olmalıdır.
- Bean sınıfı POJO sınıfının bir alt kümesidir.
- POJO'yu kullanmanın büyük bir dezavantajı yoktur, ancak Bean sınıfını kullanmanın birkaç dezavantajı olabilir.
- POJO, kullanıcılara tam erişim sağlamak ve üyelerimizi kısıtlamak istediğimizde kullanılır. Üyelere kısmi erişim sağlamak istediğimizde Bean kullanılır.
POJO Vs. Fasulye
POJO | Fasulye |
---|---|
Pojo'da Java kuralları dışında özel bir kısıtlama yoktur. | Java kuralları dışında bazı özel kısıtlamalara sahip olan özel bir POJO dosyası türüdür. |
Bean'e kıyasla alanlar üzerinde daha az kontrol sağlar. | Sahalarda tam koruma sağlar. |
POJO dosyası Serileştirilebilir arayüzü uygulayabilir; ancak zorunlu değildir. | Bean sınıfı Serileştirilebilir arayüzü uygulamalıdır. |
POJO sınıfına adları kullanılarak erişilebilir. | Bean sınıfına yalnızca alıcılar ve ayarlayıcılar kullanılarak erişilebilir. |
Alanlar genel, özel, korumalı gibi erişim değiştiricilerden herhangi birine sahip olabilir. | Alanlar yalnızca özel erişime sahip olabilir. |
POJO'da argüman içermeyen bir kurucuya sahip olmak gerekli değildir; sahip olabilir veya olmayabilir. | Arg içermeyen bir kurucuya sahip olması gerekir. |
POJO kullanmanın herhangi bir dezavantajı yoktur | Bean kullanmanın dezavantajı, Varsayılan yapıcının ve genel ayarlayıcının, nesnenin değişmez olması gerektiğinde nesne durumunu değiştirebilmesidir. |