728x90
Spring 의 jdbc Template 를 이용해서 DB 의 프로시저/함수를 호출하는 java 코드를 정리해본다.
public String CreateToken(int uid, String ip, long limitTime, boolean renew, String oldToken) {
SqlFunction sf = new SqlFunction(dataSource, "select CreateToken(?, ?, ?, ?, ?)");
sf.declareParameter(new SqlParameter("id", Types.INTEGER));
sf.declareParameter(new SqlParameter("ip", Types.VARCHAR));
sf.declareParameter(new SqlParameter("time", Types.TIME));
sf.declareParameter(new SqlParameter("renew", Types.BIT));
sf.declareParameter(new SqlParameter("oldtoken", Types.VARCHAR));
sf.compile();
Map inParams = new HashMap(5);
inParams.put("id", uid);
inParams.put("ip", ip);
inParams.put("time", limitTime);
inParams.put("renew", renew);
inParams.put("oldtoken", oldToken);
List result = sf.executeByNamedParam(inParams);
return result.get(0);
}
CreateToken 이라는 사용자 정의 MySQL procedure/function 에 파라미터 5개를 전달해서 결과값 중에서 첫번째 값만 return 하는 자바 코드. procedure 라도 spring 의 SqlFunction 을 사용해도 무방해 보임.
'Engineering > Java' 카테고리의 다른 글
| linux 에 maven(mvn) 설치 (1) | 2014.07.31 |
|---|---|
| blowfish 를 이용한 문자열 인코딩/디코딩 예제 (1) | 2013.10.30 |
| Incorrect result size: expected 1, actual 0 에러메시지 해결 (0) | 2013.08.05 |
| c# enum Flags 를 java 코드로 변경 (0) | 2013.07.24 |
| Mac 에서 한글이 포함된 java 소스 컴파일시 warning: unmappable character for encoding EUC_KR (0) | 2013.07.23 |