*자바
프로시저 호출후 HashMap으로 다시 리턴받는 소스
-service.java
//프로시저 호출 HashMap result = btob_sendDao.executeProc_cust_info(receivermobile, member_id); vo.setCust_no(result.get("ot_cust_no").toString()); //프로시저 호출 후 받은 값 set vo.setCr_id(result.get("ot_cr_id").toString()); //프로시저 호출 후 받은 값 set
-dao.java
public HashMap executeProc_cust_info(String phone_no, String login_id) throws SQLException { HashMap param = new HashMap(); param.put("in_phone_no", phone_no); param.put("in_login_id", login_id); sqlMapClientTemplate.queryForObject("sqlmap.executeProc_create_cust_info", param); }
*sqlmap
<parameterMap id="proc_create_cust_infoParam" class="HashMap"> <parameter property="in_phone_no" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN" /> <parameter property="in_login_id" javaType="java.lang.String" jdbcType="VARCHAR" mode="IN" /> <parameter property="ot_cust_no" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT" /> <parameter property="ot_cr_id" javaType="java.lang.String" jdbcType="VARCHAR" mode="OUT" /> </parameterMap> <procedure id="executeProc_create_cust_info" parameterMap="proc_create_cust_infoParam"> <![CDATA[ { call proc_create_cust_info(?, ?, ?, ?) } ]]> </procedure>
파라미터 in, out 인지 주의만 해서 코딩하면 된다.
파라미터 타입이 number 일때
<parameter property="in_count_no" javaType="java.lang.Integer" jdbcType="NUMBER" mode="IN" /> <parameter property="in_count_no" javaType="java.lang.Integer" jdbcType="DECIMAL" mode="OUT" />
반응형
'Java' 카테고리의 다른 글
[Java] 평일 날짜 수(근무일) 계산 (0) | 2020.03.17 |
---|---|
[Java] SHA-256 암호화 예제 (0) | 2020.02.05 |
[Mybatis] mapUnderscoreToCamelCase 설정 (0) | 2019.05.14 |
[Java] java.security.InvalidKeyException: Illegal key size 해결 방안(자바 암호화 모듈 JEC) (1) | 2019.01.08 |
[Java] DB연동 txt파일 만들기 (0) | 2018.09.20 |