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

Oracle में कस्टम रिकॉर्ड प्रकारों की सूची लाने के लिए MyBatis मैपिंग

मैपर को इस प्रकार बदलें

<resultMap type="detail" id="myResultMap"  >
        <result property="objectNamee" column="P_OBJECT_NAME" />
        <result property="objectStatus" column="p_object_status" />
</resultMap>

<select id="getLearnerMap" parameterType="spInOut" statementType="CALLABLE">

 {call p1.data_collection_append(#{objList, jdbcType=CURSOR, mode=OUT, resultMap=myResultMap, javaType=java.sql.ResultSet})}

</select>

अपनी डोमेन निर्देशिका में SpInOut में एक प्रकार बनाएं

public class SpInOut {

    private Object objList;
   //getter setting follows
}

यहाँ एक पूर्ण सरल उदाहरण है

DB पक्ष

कस्टम प्रकार बनाएं

PACKAGE KP_EMP_PCK AS

  type empType is ref cursor;

END KP_EMP_PCK;

एक संग्रहित प्रक्रिया बनाएं

create or replace PROCEDURE KPLISTEMP
( empList OUT kp_emp_pck.empType
) AS
BEGIN
  open empList for select empid, fname, lname,address from kpemployee order by fname;
END KPLISTEMP;

जावा साइड

डोमेन क्लास बनाएं

public class User {

    private String fName;
    private String company;
    private int age;
    private int salary;
    //getter Setter

}

SpInOut के लिए डोमेन बनाएं

public class SpInOut {

        private Object empList;
       //getter setting follows
    }

मैपर इंटरफ़ेस

public interface EmployeeMapper {

    void getEmployees(SpInOut param);

}

मैपर xml फ़ाइल

<mapper namespace="com.kp.swasthik.db.oracle.persistence.EmployeeMapper">

    <resultMap type="employee" id="empResultMap"  >
        <id property="empId" column="EMPID" />
        <result property="fName" column="FNAME" />
        <result property="lName" column="LNAME" />
        <result property="address" column="ADDRESS"  />
    </resultMap>

    <select id="getEmployees"  statementType="CALLABLE" parameterType="spInOut" >
        {call kplistemp(#{empList, jdbcType=CURSOR, mode=OUT, resultMap=empResultMap, javaType=java.sql.ResultSet})}
    </select>
</mapper>

और अंत में सर्विस क्लास

public class EmployeeServiceImpl implements EmployeeService {

    @Autowired
    EmployeeMapper mapper;

    @Override
    public List<Employee> getEmps() {
        try{
            SpInOut data= new SpInOut();
            mapper.getEmployees(data);
            return (List<Employee>) data.getEmpList();
        }catch(Exception e){
            e.printStackTrace();
        }
        return null;
    }

}



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. ORACLE 10g :To_date() मान्य माह नहीं है

  2. Oracle SQL:किसी तालिका को किसी अन्य तालिका के डेटा से अपडेट करें

  3. Oracle में डिफ़ॉल्ट बाधा नाम क्या है?

  4. ओरेकल एसक्यूएल डेवलपर:रेफ कर्सर से परिणाम कैसे देखें?

  5. क्या कोई डेटाबेस इंजन है जो RegEx द्वारा निर्दिष्ट क्वेरी करने योग्य फ़ील्ड बाधा की अनुमति देता है?