द्वारा POJO वापस करने के लिए सेट मैं iBATIS उपयोग कर रहा हूँ MSSQL सर्वर पर एक संग्रहीत प्रक्रिया कॉल करने के लिए, इनपुट पैरामीटर एक POJO कि नक्शा करने के लिए रखा जाता है पर गुण हैं पैरामीटर को प्रक्रिया में इनपुट के रूप में सही ढंग से सेट किया गया है, इसलिए वहां कुछ भी गलत नहीं है। लेकिन पैरामीटर में से एक आउटपुट-पैरामीटर है और मैं उम्मीद कर रहा था कि इसे पीओजेओ पर वापस सेट किया जाए, लेकिन इसके बजाय एक अतिरिक्त मानचित्रण "obj.new"=false
को आईबीएटीआईएस द्वारा मानचित्र रखा गया है।संग्रहित प्रक्रिया उत्पादन पैरामीटर iBATIS
<procedure id="save">
{<include refid="Core.returned_value" />
CALL SPRC_ARTICLE_NAME_SAVE (
<include refid = "Core.common_fields" />
@pArticle_id = #obj.art_id#
, @pArtname = #obj.artname#
, @pNewArticleName_flg = #obj.new,mode=INOUT#
)}
</procedure>
प्रक्रिया मैं नक्शे में दो मैपिंग है कॉल करने के बाद iBATIS के लिए पारित:
"obj"=POJO
"obj.new"=False
अब मुझे लगता है कि iBatis documentation ने कहा "संग्रहीत प्रक्रिया निष्पादित करते समय res - iBATIS OUTPUT पैरामीटर के लिए ऑब्जेक्ट्स बनाएगा " इसलिए यह समझ में आता है। लेकिन मेरा सवाल यह है कि अगर आईबीएटीआईएस को निर्देश देने का कोई तरीका प्रक्रिया के बाद पीओजेओ को बुलियन मूल्य वापस डाल देता है? मैं मानचित्र के मूल्य को प्राप्त करने के अतिरिक्त काम नहीं करता हूं और इसे अपने स्वयं के POJO पर सेट करता हूं।
// Uhlén
मैं जब मैं एक ऐसी ही समस्या का सामना बहुत उपयोगी हो करने के लिए इस http://groups.google.com/group/mybatis-user/browse_thread/thread/14826bc31c9f143d पोस्ट करने के लिए इस जेफ बटलर का जवाब देने के लिए जेफ बटलर का जवाब मिल गया (हालांकि एक अद्यतन के बजाय एक चयन कथन के साथ) –