/ / जावा ईई लुकअप मेथड के बिना डाटासोर्स का उपयोग कर रहा है - जावा, डेटासोर्स, कोड-इंजेक्शन, web.xml

जावा ईई लुकअप विधि के बिना डेटास्रोत का उपयोग - जावा, डेटासोर्स, कोड इंजेक्शन, web.xml

मैं JNDI का उपयोग करके अपने कार्यक्रम में डेटासैट (डेटाबेस) का उपयोग करने की कोशिश कर रहा हूं। मुझे यह आंशिक रूप से काम करने के लिए मिला है, लेकिन जैसे मैं चाहता हूं कि यह काम करे। मैं JNDI संसाधन को इंजेक्ट करना चाहता हूं, लेकिन यह ठीक से काम नहीं करता है।

यह काम नहीं करता है, अगर मैं एनोटेशन का उपयोग करता हूं।

@Resource(name="jdbc/crmv1")
DataSource ds;

लेकिन यह काम करता है, जब मैं लुकअप विधि का उपयोग करता हूं:

try {
ds = InitialContext.doLookup("jdbc/crmv1");
} catch (NamingException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

मैं एनोटेशन का उपयोग करना चाहता हूं। मुझे पूरा यकीन है, कि मुझे web.xml में कुछ सेट करना है, लेकिन मुझे नहीं पता कि क्या है। मैंने इसे Google करने की कोशिश की, लेकिन मैं वास्तव में निश्चित नहीं हूं कि खोजकर्ता क्या उपयोग करें।

उत्तर:

उत्तर № 1 के लिए 1

का उपयोग करते हुए संसाधन एनोटेशन आप नाम के बजाय लुकअप तत्व का उपयोग करने का प्रयास कर सकते हैं और अपने एप्लिकेशन सर्वर में आपके द्वारा कॉन्फ़िगर किए गए jndi-name का उपयोग कर सकते हैं।

उदाहरण- यदि इसे jndi-name "jdbc / crmv1" के साथ मैप किया जाता है @Resource(lookup="dbc/crmv1") या @Resource(lookup="java:jdbc/crmv1")

Web.xml का एकमात्र संबंध यह है कि आप एनोटेशन में निर्दिष्ट संसाधन मैपिंग को ओवरराइड करने के लिए परिनियोजन वर्णनकर्ता का उपयोग करते हैं।