LoginUserController.java

Map<String, String> paramMap = new HashMap<String, String>(); //서비스단에 전달한 parameter를 담는 Map객체 paramMap.put("empCode", StringUtil.nvl(request.getParameter("empCode"),"empCode")); //유저가 입력한 사원 코드 paramMap.put("password", password);LoginUserVO loginUserVO = loginUserService.getLogin(paramMap);


--------------------------------------------------------------------------

Service, DAO 기본 파라미터 값 전달 동일하구요.


마이바티스에서 프로시저 호출하고 싶은데 잘 안됩니다. 일단 제가 mapper xml에 작성한 파일은 맵퍼는


<resultMap type="hashmap" id="getLoginXML"></resultMap> <select id="getLogin" statementType="CALLABLE" parameterType="hashmap"> { call SALE.SP_X_MEMBER_GETLOGIN( #{empCode}, #{password}, #{retList, mode=OUT, jdbcType=CURSOR, javaType=ResultSet, resultMap=getLoginXML} ) } </select>


-----------------------------------------------------------------------------


오라클 프로시저에서 만든 것은 


CREATE OR REPLACE PROCEDURE      SP_X_MEMBER_GETLOGIN
(
    sp_empCode IN VARCHAR2,
    sp_password IN VARCHAR2,

     out_RESULT           OUT sys_refcursor,
     O_readboard OUT SALE0003%ROWTYPE,
     
    out_CODE    OUT NUMBER,
    out_MSG     OUT VARCHAR2
)
IS 

BEGIN 

    OPEN out_RESULT FOR
         SELECT CUST_ID AS EMP_CODE, CUST_NM AS EMP_NAME, '' AS DEPT_CODE,'1' EMP_GB, PASSWORD, USE_YN 
         INTO O_readboard 
        FROM SALE.SALE0003 
        WHERE CUST_ID LIKE '11%' AND CUST_ID = sp_empCode AND PASSWORD = UTL_I18N.STRING_TO_RAW(sp_password,'AL32UTF8');
    
    

    out_CODE := 0;
    out_MSG := '데이터 확인';
    
EXCEPTION
    WHEN OTHERS THEN
        out_CODE := SQLCODE;
        out_MSG  :=(TO_CHAR(SQLCODE) ||'-'|| SQLERRM);      

END ;


-----------------------------------------------------------------------------


 Cause: java.sql.SQLException: ORA-06550: 줄 1, 열7:PLS-00306: 'SP_X_MEMBER_GETLOGIN' 호출 시 인수의 갯수나 유형이 잘못되었습니다
ORA-06550: 줄 1, 열7:PL/SQL: Statement ignored


오류가 나옵니다.


기본 프로시저의 개념도 없는지라 부탁드립니다. ㅠ_ㅠ