Java Naming and Directory Interface (JNDI)
Reja:
Java Naming and Directory Interface
JNDI arxitekturasi
Kirish
JNDI - bu Java dasturlariga nomlash va katalog funksiyalarini ta'minlovchi dasturiy interfeys (API) va ushbu dasturlar ushbu API yordamida nomlash va katalog xizmatlaridan foydalanishlari mumkin. Bundan tashqari, Java dasturlari JNDI API ni va shunga mos ravishda kirish xizmatlaridan foydalanishi uchun turli xil nomlash va katalog xizmatlaridan foydalanishga imkon beruvchi Xizmat ko'rsatuvchi interfeys (SPI) ni o'z ichiga oladi. Komponentlar, odatda, taqsimlangan dasturga kirish va undan foydalanish zaruratiga qarab, boshqa tarkibiy qismlar va manbalarga, shu jumladan ma'lumotlar bazasi tizimiga kirishadi. JNDI nomlash xizmati kerakli tarkibiy qismlar va manbalarning joylashuvini topish uchun tarkibiy qismlarni o'z ichiga oladi.
JNDI bizga dastur komponentlarini va boshqa dasturlarning tegishli komponentlarini topishga imkon beradi. Turli nomlash va katalog xizmatlariga kirish uchun provayderlarni ulash uchun API kerak. Java dasturlari ushbu JNDI API yordamida osongina turli xil muhitlarga birlashtirilgan. JNDI Java versiyalari bilan ishlaydi, jumladan J2SE, shuningdek J2EE.
Ishlab chiquvchilar istalgan platformada ishlay oladigan dasturlarni yaratishi mumkin va bunga JNDI tufayli erishildi. Ishlab chiqilgan ilovalar keyinchalik turli xil nomlash xizmatlari va kataloglarida foydalanish uchun qo'shiladi. JNDI API ob'ektni tekshirish va uni manzilni ko'rsatish orqali ko'rish uchun turli xil vositalarni taqdim etadi va boshlang'ich nuqtasi sifatida ishlatiladi.
Java Naming and Directory Interface
Java Naming and Directory Interface (JNDI) - bu Java to'plami, Java API mijozlariga ma'lumotlarni va ob'ektlarni o'z nomlari bilan ochish va ko'rib chiqishga imkon beradigan katalog xizmati sifatida tashkil etilgan.
JNDI API fayl va katalog xizmatlariga kirish uchun ishlatiladi. Aslida, bu DNS, LDAP, mahalliy fayl tizimlari yoki amaliy server ob'ektlari kabi korxona miqyosidagi manbalarga kirish va ularni boshqarish uchun izchil modelni taqdim etadi.
Java Naming and Directory Interface (JNDI) - bu Java TM dasturlash tilidan foydalangan holda yozilgan dasturlar uchun nomlash va katalog funktsiyalarini ta'minlovchi dasturiy interfeys (API) bo'lib, u har qanday katalog xizmatini amalga oshirishga bog'liq emas. Shunday qilib, kataloglarning keng tanlovini (yangi, yangi va allaqachon joylashtirilgan) odatiy usulda olish mumkin.
JNDI API tarmoqdagi ob'ektlarni ko'rish uchun ishlatiladi va masofaviy usulda (RMI) foydalaniladi. Ushbu API kontekstni taqdim etadi, bu erda u bilan bog'liq ish to'g'risida ma'lumot topish uchun muayyan ob'ektni qidirish kerakligini ko'rsatadi.
JNDI interfeyslar to'plamini o'z ichiga oladi va JDBC kabi xizmat emas va java dasturlariga API-dan ko'pgina turli xil katalog xizmatlarini etkazib beruvchilariga kirish uchun foydalanishga imkon beradi.
JNDI API, asosan, ob'ekt nom bilan bog'liq bo'lgan maxsus so'rovni, so'rovlarning bajarilishini ta'minlash uchun katalogdagi interfeysni, mijozlarga o'zgartirilgan katalog yozuvlarini aniqlashga yordam beradigan voqea interfeysini ta'minlaydi.
JNDI arxitekturasi
Java RMI va Jakarta EE API xizmatlari tarmoqdagi ob'ektlarni qidirish uchun JNDI API-da tavsiflangan yondashuvlardan foydalanadilar. API beradi:
• nom bilan ob'ektni bog'lash (bog'lash) mexanizmi;
Umumiy so'rovlarni bajarish uchun kataloglarni ko'rib chiqish interfeysi;
• mijozlar katalog ma'lumotlarini qachon o'zgartirganligini aniqlashga imkon beradigan voqea interfeysi;
LDAP xizmatlarining qo'shimcha funktsiyalarini qo'llab-quvvatlash uchun LDAP kengaytmasi.
1-rasm. JNDI arxitekturasi
SPI interfeysi deyarli har qanday katalog nomlarini qo'llab-quvvatlashga imkon beradi, shu jumladan:
LDAP;
DNS;
NIS;
CORBA nomlash xizmati;
fayl tizimi.
JNDI kontseptsiyasi ikkita asosiy ta'rifga asoslanadi: Assotsiatsiya va kontekst.
Assotsiatsiya (ingliz tilida majburiy) - bu JNDI nomi va ob'ektining muvofiqligi.
Kontekst - bu ob'ektlar va nomlar o'rtasidagi birikmalar to'plami saqlanadigan muhit.
Do'stlaringiz bilan baham: |