Ana Arayüz – Blog Yazma – Web Tasarımı Yapımı – Web Tasarımı YouTube Videosu Yapımı – Web Sitesi Tasarlama Fiyatları

Ana Arayüz
İstemcinin bir profil sunucusuna yerel bir referans oluşturması için bir yola ihtiyacı var, bu yüzden gösterildiği gibi bean’imiz için bir ana arayüz sağlamalıyız. Bu ev arabirimi, bağımsız değişken almayan ve bean’in uzak arabirim türü olan ProfileServer’ı döndüren tek bir create() yöntemi sağlar.
Bir EJB nesnesinin ana arabirimi, javax.ejb.EJBHome arabirimini genişletir. EJBHome java.rmi.Remote’u genişlettiğinden, ana arabirim aynı zamanda bir RMI uzak arabirimidir. Ev arabirimi, bean’in oluşturulması için çeşitli başlatma argümanlarını alan birden çok create() yöntemi içerebilir. create() yöntemi, bean’imizin uzak arayüzüne (bu durumda Profil Sunucusu) bir referans döndürür.
Gösterildiği gibi, ev arabirimindeki her create() yöntemi için, EJB nesne uygulamasının aynı argümanları alan eşleşen bir ejbCreate() yöntemi olması gerekir. Giriş arabirimi bir RMI uzak arabirim olduğundan, ana arabirimdeki create() yöntemi java.rmi.RemoteException’ı attığını bildirmek zorundadır.
Ayrıca, EJB oluşturma işlemi sırasında bir hata oluşması durumunda (bazı genel RMI ile ilgili sorunların aksine) javax.ejb.CreateException’ı atmalıdır. Fasulye uygulamasında karşılık gelen ejbCreate() yöntemi başka istisnalar atarsa, create() yönteminin bunları throws yan tümcesine de dahil etmesi gerekir.
Bu örnekte, bean’in ejbCreate() yöntemi herhangi bir istisna oluşturmaz, dolayısıyla buraya herhangi bir ek istisna eklememize gerek yoktur.
Varlık bean’leri için ana arayüzler, daha önce oluşturulmuş olan mevcut kalıcı varlık bean’lerini bulmak için kullanılan bulucu yöntemlerini de içerebilir. Bunları biraz sonra, varlık çekirdeklerinden bahsederken ayrıntılı olarak tartışacağız.
Uzak Arayüz
Genellikle bir EJB’yi uzak arabirimini tanımlayarak bir araya getirmeye başlarsınız. Bu arabirim, uzak istemciler tarafından kullanılabilen yöntemlerin bildirimlerini içerir, bu nedenle gerçekten EJB nesnesinin kalbine işaret eder.
ProfileServer’ımızın uzak arabirimi gösterilmektedir. Uzak bir EJB arabirimi, javax.ejb.EJBObject arabirimini genişletmelidir. EJBObject ise java.rmi.Remote arabirimini genişleterek EJB uzak arabirimini aynı zamanda bir RMI uzak arabirimi haline getirir.
ProfileServer arabirimi, tek bağımsız değişkeni olarak bir kullanıcı adını kabul eden getProfile() adlı tek bir uzak yöntemi tanımlar. Adlandırılan kişinin profil bilgilerini içeren bir Profile nesnesi döndürür. Kişinin profili sunucuda bulunamazsa NoSuchPersonException atılır.
Bu, uygulaması burada gösterilmeyen, uygulamaya özel bir istisnadır. ProfileServer arabirimi bir RMI uzak arabirimi olduğundan, bir yöntem çağrısı sırasında bazı RMI iletişim sorunları oluşması durumunda yöntemleri RemoteException atmalıdır.
Ayrıca, yöntemler için bağımsız değişkenler ve dönüş değerleri Serileştirilebilir olmalıdır ve/veya bunların kendileri dışa aktarılabilir RMI nesneleri olmalıdır. getProfile() yöntemimiz, bir RMI−dışarı aktarılabilir nesne olarak uygulayacağımız bir Profile nesnesi döndürür.
Profil için uzak arabirim gösterilir. Arayüzün yalnızca iki uzak yöntemi vardır, biri profil giriş değerlerini ayarlamak ve diğeri bu değerleri almak için. Not: Profile uzak arayüzünün uygulanması bu bölümde gösterilmemiştir.
EJB nesnenizi dağıttığınızda, uzak arabirim aracılığıyla çekirdeğinizdeki her bir yöntemi kimlerin çağırabileceğini belirtebilirsiniz. Bu durumda, yalnızca belirli istemcilerin kullanıcı profillerini sorgulayabilmesini isteyebiliriz, bu nedenle ProfileServer bean’imiz üzerindeki getProfile() yöntemine erişimi sınırlamak isteyebiliriz. Fasulye dağıtım tanımlayıcılarının erişim kontrolü özelliklerini bölümün ilerleyen kısımlarında tartışacağız.
Donanım arayüzü
Kullanıcı arayüzü
Modem arayüzü giriş
Modem arayüzü şifresi
Arayüz nedir
Modem arayüzü kullanıcı adı şifre
TP-Link Modem Arayüzü
Millenicom modem arayüz şifresi
Bean Uygulaması
İstemcilerin EJB referansları oluşturmasına izin veren bir ana arayüze ve EJB yöntemlerini tanımlayan bir uzak arayüze sahip olduğumuza göre, EJB nesnesinin kendisini uygulamamız gerekiyor. ProfileServerBean’imiz gösteriliyor.
RMI’ye aşina iseniz, bu, bazı ekstra yöntemlerin dahil olduğu bir RMI sunucu nesnesi gibi görünmelidir. Bu ekstra yöntemler, EJB kabının çekirdeği bir bileşen olarak yönetmek için kullandığı kancalardır. Sınıfın sonunda, uzak arabirimden getProfile() yönteminin uygulanması yer alır. ejbCreate() yöntemi, ev arayüzündeki create() yöntemiyle eşleşmesi için buraya da dahil edilmiştir.
Bir EJB nesnesine ilişkin sınıf, javax.ejb.EnterpriseBean arabirimini uygulamalıdır. Bu genellikle javax.ejb.SessionBean arayüzü veya javax.ejb.EntityBean arayüzü aracılığıyla dolaylı olarak yapılır. Örneğimizde, bir oturum çekirdeği tanımlıyoruz, bu nedenle ProfileServerBean sınıfı, SessionBean arabirimini uygular.
EJB sınıfı, kabın çekirdeği kaba bağlayan sınıfları oluştururken sınıfın iç gözlemine izin vermek ve kabın gerektiğinde doğrudan fasulye üzerindeki yöntemleri çağırmasına izin vermek için genel olarak bildirilmelidir.
Bean sınıfı isteğe bağlı olarak bean’in uzak arabirimini uygulayabilir, ancak bu kesinlikle gerekli değildir. Bizim durumumuzda, fasulyenin uzak ProfileServer arayüzünü ProfileServerBean sınıfında uygulamadık.
EJB sunucusu, çekirdeği kapsayıcıya bağlayan sınıfları oluşturduğunda, uzak arabirimi uygulayan ve EJB sınıfının kendisi için proxy görevi gören bir sınıf da sağlar.
Sunucu uygulamasına ve bu sınıfları nasıl oluşturmayı seçtiğine bağlı olarak, bir düzey yöntem dolaylılığını ortadan kaldırabileceğinden, uzak arabirimi doğrudan uygulayan bir EJB sınıfı sağlamanız sizin için yararlı olabilir. Ancak bu, sunucuya bağımlıdır, dolayısıyla bunun yardımcı olacağının (veya zarar vereceğinin) garantisi yoktur.
Aslında, pratik nedenlerle, muhtemelen EJB uygulamanızın bean’iniz için uzak arabirimi uygulamasını istemezsiniz. Uzak arabirim, istemcilerin bean’in ana arabirimini almak, varlık bean’leri için birincil anahtarı almak vb. için kullanabilecekleri bir dizi soyut yöntem içeren EJBObject arabirimini genişletmelidir.
Bean’inizi dağıttığınızda, EJBObject’ten bu yöntemleri uygulayan uzak arabirim için saplama ve iskelet sınıfları oluşturmak için EJB kapsayıcı araçları tarafından sağlanan araçları kullanacaksınız. Fasulye uygulama sınıfınızla uzak arayüzü uygularsanız, EJBObject yöntemleri için de uygulamalar sağlamanız gerekir.
Oturum çekirdekleri veya varlık çekirdekleri olsun, tüm Enterprise JavaBean nesneleri aşağıdaki yöntemleri uygulamalıdır:
genel geçersiz ejbActivate()
Fasulye sunucudaki pasif depolamadan seri hale getirildiğinde kapsayıcı tarafından çağrılır. Bean’in pasivasyon sırasında serbest bırakılan tüm kaynakları (ör. dosya tanıtıcıları, ağ bağlantıları) geri almasına veya bean serileştirildiğinde açıkça kaydedilmemiş diğer durumları geri yüklemesine izin verir.
genel geçersiz ejbPassivate()
Bean seri hale getirilmeden ve sunucudaki pasif depolamada (ör. disk, veritabanı) saklanmadan hemen önce kapsayıcı tarafından çağrılır. Bean’in serileştirilemeyen kaynakları serbest bırakmasına izin verir (ör. açık dosyalar, ağ bağlantıları).
genel geçersiz ejbCreate
İstemci, bean’in ana arabirimindeki create() yöntemlerinden birini çağırdıktan sonra çağrılır. Bean ve ana arabirimi, istemcinin yeni bean oluşturmasına izin vermek için genellikle en az bir create()/ejbCreate() çifti sağlar. En az bir oluşturma yöntemi sağlamak için oturum çekirdekleri gereklidir, ancak varlık çekirdekleri bulucu yöntemleri kullanılarak da elde edilebildiğinden, varlık çekirdeklerinde oluşturma yöntemleri isteğe bağlıdır.
Web sitelerinizi, arama motorlarında en yukarı getirmek adına sizlere 3 adet paket öneriyoruz. Bu paketler sayesinde web siteleriniz aramalarda 1 yıl içerisinde en yukarıya tırmanacaktır.
1) Backlink Paketi 50 $ (Yıllık Ücret)
2) Hızlandırma Paketi 300 $ (Yıllık Ücret)
3) Kelime Yönlendirme Paketi 150 $ (Aylık Ücret)