Merhabalar arkadaşlar, Sitemizi programlama ile ilgilenen bütün arkadaşlarımızın türkçe içerik konusunda çektiği sıkıntılar düşünülerek soru/cevap şeklinde bir etkileşimde bulunabilmesi için kurduk. Umuyoruz hepimiz için güzel bir deneyim olur. Hasscript Ekibi

Sorunuz mu var? Belki de çoktan soruldu..

0
JNDI nedir? Neden kullanılır?

Açık 2 Cevaplar 340 Gösterim Java
JNDI kavramının ne olduğu ile alakalı bilgi verebilir misiniz? Sadece veri tabanı bağlantı işlemlerini mi yapabiliyoruz?

2 Cevap

0
Java platformunun bir parçası olan Java Naming and Directory Interface (JNDI) , java isimlendirme/adlandırma ve dizin bildirme ara birimi/ara yüzü;  birden çok adlandırma ve dizin hizmetleri (servisler) için birleşik bir arayüz ile Java teknolojisi tabanlı uygulamaları sağlar.

JNDI, dizin servisler (directory service) için Java yazılım clientların bir isimle/adla veri ve nesneleri keşfedip aratabilmelerini sağlayan bir Java API'sidir.

JNDI ile veritabanı için sadece bu ismi vermek uygulama geliştiriciler için yeterli olacaktır.
27 Aralık 2016 tolga (1,618 puan) cevapladı
1Yorumlar
27 Aralık 2016 kenan (2,833 puan) yorumladı

Ben çok anlamadım açıkçası biraz daha açıklayıcı olabilir misin?

JNDI, dizin servisler (directory service) için Java yazılım clientların bir isimle/adla veri ve nesneleri keşfedip aratabilmelerini sağlayan bir Java API'sidir.
 

Directory service derken ben pek birşey anlamadım. Örnek olarak birşey verebilir misin?

0
JNDI - Java Naming and Directory Interface

JNDI java programlama dili standard versiyonu üzerinde desteklenen bir API grubudur. Naming ve Directory hizmetlerini vermek için kullanılır. Bu kavramları da biraz açalım

Naming service: Bir bilgiyi veya bilgi grubunu herkesin ulaşabileceği merkezi bir alanda tutarak hepsinin bir yerden yönetilmesine deniyor. Bu bilginin içinde istenilen bilgiler olabilir. Şimdiye kadar benim de en fazla kullandığım JNDI API sanırım veritabanı bağlantılarını tuttuğumuz alanlar oluyor. Bir java-web uygulamasında veri tabanı bağlantısını açmak için bir projemizde "size kullanıcı adı-şifre veremeyiz, kullanacağınız veri tabanının bağlantısını JNDI olarak veririz" diye bir yorum yapmışlardı. Ben de o zaman öğrenmiştim. Yani ben bir isimle uygulamamın içinde diyorum ki "veriTabani" ismindeki sınıfı bana ver. Kullandığımız JNDI sağlayıcı (tomcat/JBoss gibi sunucular olabilir) bize direk olarak oluşturulmuş kullanıma hazır sınıfları veriyor. İçindeki bilgileri bizim görmemize gerek kalmıyor. Dökümanlarda ufak tefek string değerler de eklendiğini ve bunların kullanıldığını gördüm.

Tomcat üzerinden örnek verirsek, daha tomcat ayağa kalkarken istediğimiz sınıfları ayağa kaldırıp bizim kullanımımıza veriyor. Bu kullanıma hazır sınıflar da uygulamalar arasında paylaşıyor. Yani tomcat üzerindeki bütün projeler bu sınıfları ortaklaşa kullanabiliyor.

Directory servisi araştırdığım zaman en bariz örnek LDAP çıkıyor. Yani kullanıcıların klasörlenmesi ve içinden çıkılması için kullanılıyor. Java'da default olarak LDAP kullanımı için sınıflar bulunuyor ve bunlar JNDI ile kullanılıyor.
13 Ocak kenan (2,833 puan) cevapladı
...