// ****Utility 메서드 시작 // Token 값을 비롯한 timestamp 정보를 생성하여 테이블에 추가함. private TokenVO createTokenToTable(RequestAuthVO rVO, UserVO uVO, ClientVO cVO) throws OAuth2Exception { TokenVO tVO; try { // 5.1 Access Token 랜덤하게 생성하여 TokenVO 생성하고 저장 // TODO 목요일 : TOKEN 값 설정하고 DB에 저장 (sqlmap, dao, controller) tVO = new TokenVO(); tVO.setClient_id(rVO.getClient_id()); // 승인한 사용자 tVO.setUserid(uVO.getUserid()); tVO.setToken_type(OAuth2Constant.TOKEN_TYPE_BEARER); tVO.setScope(rVO.getScope()); // expires_in과 refresh_token의 사용 여부는 각 조직이 결정한다. tVO.setExpires_in(OAuth2Constant.EXPIRES_IN_VALUE); tVO.setRefresh_token(OAuth2Util.generateToken()); tVO.setCode(OAuth2Util.generateToken()); tVO.setClient_type(cVO.getClient_type()); tVO.setAccess_token(OAuth2Util.generateToken()); // 생성 시간을 계산을 용이하게 하기 위해 타임스탬프 형태로 저장 long currentTimeStamp = OAuth2Util.getCurrentTimeStamp(); tVO.setCreated_at(currentTimeStamp); tVO.setCreated_rt(currentTimeStamp); System.out.println(tVO); // tbl_Token테이블에 추가 dao.createToken(tVO); } catch (Exception e) { // TODO Auto-generated catch block e.printStackTrace(); throw new OAuth2Exception(401, OAuth2ErrorConstant.UNAUTHORIZED_CLIENT); } return tVO; }