Oracle
 sql >> डेटाबेस >  >> RDS >> Oracle

MyBatis के साथ Oracle संग्रहीत कार्यविधियों को कॉल करना

परिणाम नक्शा इस तरह दिखता है:

<resultMap id="UserResult" type="User">
    <id property="userId" column="userId"/>
    <result property="firstName" column="firstName"/>
    <result property="lastName" column="lastName"/>     
</resultMap>

अपने चयन कथन में, पैरामीटर प्रकार को java.util.Map में बदलें।

<select id="getUsers" statementType="CALLABLE" parameterType="java.util.Map"> 
    {call GetUsers(#{users, jdbcType=CURSOR, javaType=java.sql.ResultSet, mode=OUT, resultMap=UserResult})} 
</select>

आपका मैपर इंटरफ़ेस इस तरह दिखता है, ऐसा लगता है कि आप वर्तमान में इसे डीएओ कह रहे हैं। जिस तरह से मैंने इसे अतीत में किया है वह एक मैपर इंटरफ़ेस बनाना है जो डीएओ में इंजेक्शन हो जाता है और डीएओ मैपर पर विधियों को कॉल करता है। यहाँ एक उदाहरण मैपर इंटरफ़ेस है:

public interface UserMapper {
    public Object getUsers(Map<String, Object> params);
}

उस मैपर वर्ग को तब डीएओ कक्षा में इंजेक्ट किया जाएगा और इस तरह कॉल किया जाएगा:

public List<User> getUsers() {
    Map<String, Object> params = new HashMap<String, Object>(); 
    ResultSet rs = null;
    params.put("users", rs);
    userMapper.getUsers(params);
    return ((ArrayList<User>)params.get("users"));
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. एक गैर-संख्यात्मक वर्ण पाया गया जहाँ एक संख्यात्मक अपेक्षित था

  2. संख्या को तिथि में बदलें sql oracle

  3. ओरेकल में बेस 64 एन्कोडिंग और डिकोडिंग

  4. एक चरित्र आधारित ओरेकल फॉर्म को माइग्रेट करना

  5. Oracle 10g Webapp में JAXB 2