JDBC driver
જે. ડી. બી. સી. ડ્રાઇવર એ એક સોફ્ટવેર ઘટક છે જે જાવા એપ્લિકેશનને ડેટાબેઝ સાથે ક્રિયાપ્રતિક્રિયા કરવા માટે સક્ષમ કરે છે. જે. ડી. બી. સી. ડ્રાઇવરો ODBC ડ્રાઇવરો, ADO.NET ડેટા પ્રદાતાઓ અને OLE DB પ્રદાતાઓ જેવા જ છે. વ્યક્તિગત ડેટાબેઝ સાથે જોડાવા માટે, જે. ડી. બી. સી. (જાવા ડેટાબેઝ કનેક્ટિવિટી API) ને દરેક ડેટાબેઝ માટે ડ્રાઇવરોની જરૂર પડે છે. જે. ડી. બી. સી. ડ્રાઇવર ડેટાબેઝ સાથે જોડાણ આપે છે અને ક્લાયન્ટ અને ડેટાબેઝ વચ્ચે ક્વેરી અને પરિણામને સ્થાનાંતરિત કરવા માટે પ્રોટોકોલનો અમલ કરે છે. જે. ડી. બી. સી. ટેક્નોલોજી ડ્રાઇવરો ચારમાંથી એક શ્રેણીમાં બંધબેસે છે. જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ નેટિવ-એ. પી. આઈ. ડ્રાઈવર નેટવર્ક-પ્રોટોકોલ ડ્રાઈવર (મિડલવેર ડ્રાઈવર) ડેટાબેઝ-પ્રોટોકોલ ડ્રાઈવર (પ્યોર જાવા ડ્રાઈવર) અથવા થિન ડ્રાઈવર. પ્રકાર 1 ડ્રાઇવર-જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ પ્રકાર 1 ડ્રાઇવર-જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ જે. ડી. બી. સી. પ્રકાર 1 ડ્રાઇવર, જે જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ તરીકે પણ ઓળખાય છે, તે ડીબેઝ ડ્રાઇવર અમલીકરણ છે જે ડેટાબેઝ સાથે જોડાવા માટે ઓ. ડી. બી. સી. ડ્રાઇવરને રોજગારી આપે છે. ડ્રાઈવર જે. ડી. બી. સી. પદ્ધતિ કોલને ઓ. ડી. બી. સી. કાર્ય કોલમાં રૂપાંતરિત કરે છે. ડ્રાઇવર પ્લેટફોર્મ-આધારિત છે કારણ કે તે ODBC નો ઉપયોગ કરે છે જે બદલામાં JVM પર ચાલી રહેલી અંતર્ગત ઓપરેટિંગ સિસ્ટમની મૂળ લાઈબ્રેરીઓ પર આધાર રાખે છે. ઉપરાંત, આ ડ્રાઇવરનો ઉપયોગ અન્ય સ્થાપન નિર્ભરતા તરફ દોરી જાય છે; ઉદાહરણ તરીકે, ODBC એ ડ્રાઇવર ધરાવતા કમ્પ્યુટર પર સ્થાપિત હોવું આવશ્યક છે અને ડેટાબેઝે ODBC ડ્રાઇવરને ટેકો આપવો આવશ્યક છે. જો શુદ્ધ-જાવા ડ્રાઇવરનો વિકલ્પ ઉપલબ્ધ હોય તો આ ડ્રાઇવરનો ઉપયોગ નિરુત્સાહિત કરવામાં આવે છે. અન્ય સૂચિતાર્થ એ છે કે પ્રકાર 1 ડ્રાઇવરનો ઉપયોગ કરતી કોઈપણ એપ્લિકેશન ડ્રાઇવર અને પ્લેટફોર્મ વચ્ચેના બંધનને ધ્યાનમાં રાખીને બિન-પોર્ટેબલ છે. આ ટેકનોલોજી ઉચ્ચ વ્યવહાર વાતાવરણ માટે યોગ્ય નથી. પ્રકાર 1 ડ્રાઇવરો પણ સંપૂર્ણ જાવા આદેશ સમૂહને ટેકો આપતા નથી અને ODBC ડ્રાઇવરની કાર્યક્ષમતા દ્વારા મર્યાદિત છે. સન (હવે ઓરેકલ) એ જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ ડ્રાઇવર પ્રદાન કર્યુંઃ sun.jdbc.odbc.JdbcOdbcDriver. આ ડ્રાઇવર મૂળ કોડ છે અને જાવા નહીં, અને બંધ સ્રોત છે. જાવા 8માં સન/ઓરેકલના જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજને દૂર કરવામાં આવ્યો હતો (અન્ય વિક્રેતાઓ ઉપલબ્ધ છે). જો ડ્રાઇવર લખવામાં આવ્યો હોય જેથી તેને લોડ કરવાથી એક ઉદાહરણ બનાવવામાં આવે અને તે ઉદાહરણને પરિમાણ તરીકે DriverManager.registerDriver પર કૉલ પણ કરે, તો તે ડ્રાઇવર મેનેજરની ડ્રાઇવરોની સૂચિમાં છે અને જોડાણ બનાવવા માટે ઉપલબ્ધ છે. કેટલીકવાર એવું બની શકે છે કે એક કરતાં વધુ જે. ડી. બી. સી. ડ્રાઇવર આપેલ યુ. આર. એલ. સાથે જોડાવા માટે સક્ષમ હોય. ઉદાહરણ તરીકે, આપેલ દૂરસ્થ ડેટાબેઝ સાથે જોડતી વખતે, જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજ ડ્રાઇવર, જે. ડી. બી. સી.-થી-સામાન્ય-નેટવર્ક-પ્રોટોકોલ ડ્રાઇવર અથવા ડેટાબેઝ વિક્રેતા દ્વારા પૂરા પાડવામાં આવેલ ડ્રાઇવરનો ઉપયોગ કરવો શક્ય બની શકે છે. આવા કિસ્સાઓમાં, ડ્રાઇવરોનું જે ક્રમમાં પરીક્ષણ કરવામાં આવે છે તે નોંધપાત્ર છે કારણ કે ડ્રાઈવર મેનેજર તેને મળેલા પ્રથમ ડ્રાઇવરનો ઉપયોગ કરશે જે આપેલ URL સાથે સફળતાપૂર્વક જોડાઈ શકે છે. પહેલા ડ્રાઇવર મેનેજર દરેક ડ્રાઇવરનો તે નોંધાયેલા ક્રમમાં ઉપયોગ કરવાનો પ્રયાસ કરે છે. (jdbc.drivers માં સૂચિબદ્ધ ડ્રાઇવરો હંમેશા પહેલા નોંધાયેલા હોય છે.) જ્યાં સુધી તેઓ જોડાણ ખોલવાનો પ્રયાસ કરી રહેલા કોડ જેવા જ સ્રોતમાંથી લોડ કરવામાં આવ્યા ન હોય ત્યાં સુધી તે અવિશ્વસનીય કોડ ધરાવતા કોઈપણ ડ્રાઇવરોને છોડી દેશે. તે બદલામાં દરેક પર Driver.connect પદ્ધતિને કૉલ કરીને ડ્રાઇવરોની ચકાસણી કરે છે, તેમને તે URL પસાર કરે છે જે વપરાશકર્તાએ મૂળ રીતે DriverManager.getConnection પદ્ધતિમાં પસાર કર્યું હતું. પ્રથમ ડ્રાઇવર જે યુઆરએલને ઓળખે છે તે જોડાણ બનાવે છે. ફાયદાઓ લગભગ કોઈપણ ડેટાબેઝ કે જેના માટે ODBC ડ્રાઇવર ઇન્સ્ટોલ કરેલ હોય તેને એક્સેસ કરી શકાય છે, અને ડેટા પુનઃપ્રાપ્ત કરી શકાય છે. ગેરફાયદા પ્રદર્શન ઓવરહેડ કારણ કે કૉલ્સને જે. ડી. બી. સી. (જાવા ડેટાબેઝ કનેક્ટિવિટી) પુલમાંથી ODBC (ઓપન ડેટાબેઝ કનેક્ટિવિટી) ડ્રાઇવર સુધી જવું પડે છે, પછી મૂળ ડેટાબેઝ કનેક્ટિવિટી ઇન્ટરફેસ પર (આમ અન્ય પ્રકારના ડ્રાઇવરો કરતા ધીમું હોઈ શકે છે). ODBC ડ્રાઇવરને ક્લાયન્ટ મશીન પર સ્થાપિત કરવાની જરૂર છે. સફરજન માટે યોગ્ય નથી, કારણ કે ક્લાયન્ટ પર ODBC ડ્રાઇવર સ્થાપિત કરવાની જરૂર છે. ચોક્કસ ODBC ડ્રાઇવરો હંમેશા તમામ પ્લેટફોર્મ પર ઉપલબ્ધ હોતા નથી; તેથી, આ ડ્રાઇવરની પોર્ટેબિલિટી મર્યાદિત છે. જે. ડી. કે. 1.8 (જાવા 8) માંથી કોઈ આધાર નથી. પ્રકાર 2 ડ્રાઇવર-મૂળ-API ડ્રાઇવર જે. ડી. બી. સી. પ્રકાર 2 ડ્રાઇવર, જેને મૂળ-API ડ્રાઇવર તરીકે પણ ઓળખવામાં આવે છે, તે ડેટાબેઝ ડ્રાઇવર અમલીકરણ છે જે ડેટાબેઝના ક્લાયન્ટ-સાઇડ લાઇબ્રેરીનો ઉપયોગ કરે છે. ડ્રાઈવર જે. ડી. બી. સી. પદ્ધતિના કોલને ડેટાબેઝ APIના મૂળ કોલમાં રૂપાંતરિત કરે છે. ઉદાહરણ તરીકેઃ ઓરેકલ ઓ. સી. આઈ. ડ્રાઇવર પ્રકાર 2 ડ્રાઇવર છે. ફાયદાઓ કારણ કે જે. ડી. બી. સી.-ઓ. ડી. બી. સી. બ્રિજનું કોઈ અમલીકરણ નથી, તે ટાઇપ 1 ડ્રાઇવર કરતાં નોંધપાત્ર રીતે ઝડપી હોઈ શકે છે. ગેરફાયદા વિક્રેતા ક્લાયન્ટ લાઇબ્રેરીને ક્લાયન્ટ મશીન પર સ્થાપિત કરવાની જરૂર છે. બધા ડેટાબેઝમાં ક્લાયન્ટ-સાઇડ લાઇબ્રેરી હોતી નથી. આ ડ્રાઇવર પ્લેટફોર્મ પર નિર્ભર છે. આ ડ્રાઇવર એપલેટ્સ સિવાય તમામ જાવા કાર્યક્રમોને આધાર આપે છે. પ્રકાર 3 ડ્રાઇવર-નેટવર્ક-પ્રોટોકોલ ડ્રાઇવર (મિડલવેર ડ્રાઈવર) જે. ડી. બી. સી. પ્રકાર 3 ડ્રાઇવર, જેને ડેટાબેઝ મિડલવેર માટે પ્યોર જાવા ડ્રાઇવર તરીકે પણ ઓળખવામાં આવે છે, તે ડેટાબેઝ ડ્રાઇવર અમલીકરણ છે જે કૉલિંગ પ્રોગ્રામ અને ડેટાબેઝ વચ્ચેના મધ્યમ સ્તરનો ઉપયોગ કરે છે. મધ્યમ-સ્તર (એપ્લિકેશન સર્વર) જે. ડી. બી. સી. કૉલ્સને પ્રત્યક્ષ અથવા પરોક્ષ રીતે વિક્રેતા-વિશિષ્ટ ડેટાબેઝ પ્રોટોકોલમાં રૂપાંતરિત કરે છે. આ પ્રકાર 4 ડ્રાઇવરથી અલગ છે કારણ કે પ્રોટોકોલ રૂપાંતર તર્ક ક્લાયન્ટ પર નહીં, પરંતુ મધ્યમ સ્તરમાં રહે છે. પ્રકાર 4 ડ્રાઇવરોની જેમ, પ્રકાર 3 ડ્રાઇવર સંપૂર્ણપણે જાવામાં લખાયેલ છે. સમાન ક્લાયન્ટ-સાઇડ જે. ડી. બી. સી. ડ્રાઇવરનો ઉપયોગ બહુવિધ ડેટાબેઝ માટે થઈ શકે છે. તે મિડલવેરને આધાર આપવા માટે રૂપરેખાંકિત કરવામાં આવેલા ડેટાબેઝની સંખ્યા પર આધાર રાખે છે. પ્રકાર 3 ડ્રાઇવર પ્લેટફોર્મ-સ્વતંત્ર છે કારણ કે પ્લેટફોર્મ-સંબંધિત તફાવતોની કાળજી મિડલવેર દ્વારા લેવામાં આવે છે. ઉપરાંત, મિડલવેરનો ઉપયોગ સુરક્ષા અને ફાયરવોલ ઍક્સેસના વધારાના લાભો પૂરા પાડે છે. કાર્યો જે. ડી. બી. સી. એ. પી. આઈ. કોલને મધ્યમ-સ્તરના નેટ સર્વર પર મોકલે છે જે કોલને ડી. બી. એમ. એસ.-વિશિષ્ટ નેટવર્ક પ્રોટોકોલમાં અનુવાદિત કરે છે. અનુવાદિત કૉલ્સ પછી ચોક્કસ ડી. બી. એમ. એસ. પર મોકલવામાં આવે છે. ત્રિસ્તરીય સંચાર અભિગમને અનુસરે છે. બહુવિધ ડેટાબેઝ સાથે ઇન્ટરફેસ કરી શકે છે-વિક્રેતા વિશિષ્ટ નહીં. જાવામાં લખાયેલ જે. ડી. બી. સી. ક્લાયન્ટ ડ્રાઇવર, ડેટાબેઝ સ્વતંત્ર પ્રોટોકોલનો ઉપયોગ કરીને મિડલવેર-નેટ-સર્વર સાથે વાતચીત કરે છે, અને પછી આ નેટ સર્વર આ વિનંતીને તે ડેટાબેઝ માટે ડેટાબેઝ આદેશોમાં અનુવાદિત કરે છે. આમ મિડલવેર સંચાર માટે ક્લાયન્ટ ડ્રાઇવર ડેટાબેઝથી સ્વતંત્ર છે. ફાયદા ક્લાયન્ટ અને મિડલવેર સર્વર વચ્ચેનો સંચાર ડેટાબેઝથી સ્વતંત્ર હોવાથી, ક્લાયન્ટ પર ડેટાબેઝ વિક્રેતા પુસ્તકાલયની કોઈ જરૂર નથી. નવા ડેટાબેઝ માટે ક્લાયન્ટને બદલવાની જરૂર નથી. મિડલવેર સર્વર (જે સંપૂર્ણ J2EE એપ્લિકેશન સર્વર હોઈ શકે છે) કેશીંગ (જોડાણો, ક્વેરી પરિણામો વગેરે) જેવી લાક્ષણિક મિડલવેર સેવાઓ પ્રદાન કરી શકે છે. ), લોડ બેલેન્સિંગ, લોગિંગ અને ઓડિટિંગ. સિંગલ ડ્રાઇવર કોઈપણ ડેટાબેઝને હેન્ડલ કરી શકે છે, જો મિડલવેર તેને સપોર્ટ કરે તો. ઇ. જી. IDA સર્વર ગેરફાયદાઓ માટે ડેટાબેઝ-વિશિષ્ટ કોડિંગ મધ્યમ સ્તરમાં કરવાની જરૂર છે. ઉમેરાયેલ મિડલવેર સ્તર વધારાના વિલંબમાં પરિણમી શકે છે, પરંતુ સામાન્ય રીતે વધુ સારી મિડલવેર સેવાઓનો ઉપયોગ કરીને તેને દૂર કરવામાં આવે છે. પ્રકાર 4 ડ્રાઇવર-ડેટાબેઝ-પ્રોટોકોલ ડ્રાઇવર/પાતળા ડ્રાઇવર (શુદ્ધ જાવા ડ્રાઇવર) જે. ડી. બી. સી. પ્રકાર 4 ડ્રાઇવર, જેને ડાયરેક્ટ ટુ ડેટાબેઝ પ્યોર જાવા ડ્રાઇવર તરીકે પણ ઓળખવામાં આવે છે, તે ડેટાબેઝ ડ્રાઇવર અમલીકરણ છે જે જે. ડી. બી. સી. કૉલ્સને સીધા વિક્રેતા-વિશિષ્ટ ડેટાબેઝ પ્રોટોકોલમાં રૂપાંતરિત કરે છે. સંપૂર્ણપણે જાવામાં લખાયેલા, પ્રકાર 4 ડ્રાઇવરો આમ પ્લેટફોર્મ સ્વતંત્ર છે. તેઓ ક્લાયન્ટના જાવા વર્ચ્યુઅલ મશીનની અંદર સ્થાપિત કરે છે. આ પ્રકાર 1 અને પ્રકાર 2 ડ્રાઇવરો કરતાં વધુ સારું પ્રદર્શન પ્રદાન કરે છે કારણ કે તેમાં કૉલ્સને ODBC અથવા ડેટાબેઝ API કૉલ્સમાં રૂપાંતરિત કરવાની ઓવરહેડ નથી. પ્રકાર 3 ડ્રાઇવરોથી વિપરીત, તેને કામ કરવા માટે સંકળાયેલ સોફ્ટવેરની જરૂર નથી. ડેટાબેઝ પ્રોટોકોલ વિક્રેતા વિશિષ્ટ હોવાથી, જે. ડી. બી. સી. ક્લાયન્ટને વિવિધ પ્રકારના ડેટાબેઝ સાથે જોડાવા માટે અલગ ડ્રાઇવરોની જરૂર પડે છે, જે સામાન્ય રીતે વિક્રેતા દ્વારા પૂરા પાડવામાં આવે છે. પ્લેટફોર્મ સ્વતંત્રતા હાંસલ કરવા માટે જાવામાં લાભોનો સંપૂર્ણપણે અમલ કરવામાં આવ્યો. આ ડ્રાઇવરો વિનંતીઓને મધ્યસ્થી સ્વરૂપમાં અનુવાદિત કરતા નથી (જેમ કે ODBC). ક્લાયન્ટ એપ્લિકેશન સીધા ડેટાબેઝ સર્વર સાથે જોડાય છે. કોઈ અનુવાદ અથવા મિડલવેર સ્તરોનો ઉપયોગ કરવામાં આવતો નથી, જે કામગીરીમાં સુધારો કરે છે. જે. વી. એમ. એપ્લિકેશન-થી-ડેટાબેઝ જોડાણના તમામ પાસાઓનું સંચાલન કરી શકે છે; આ ડીબગિંગને સરળ બનાવી શકે છે. ગેરફાયદા ડ્રાઇવરો ડેટાબેઝ વિશિષ્ટ હોય છે, કારણ કે વિવિધ ડેટાબેઝ વિક્રેતાઓ વ્યાપક રીતે અલગ (અને સામાન્ય રીતે માલિકીના) નેટવર્ક પ્રોટોકોલનો ઉપયોગ કરે છે. આ પણ જુઓ ADO.NET OLE DB ઓપન ડેટાબેઝ કનેક્ટિવિટી (ODBC) XQJ (જાવા માટે XQuery API) સંદર્ભો જાવા પ્લેટફોર્મ ડેટા એક્સેસ તકનીકો