Notice
Recent Posts
Recent Comments
Link
투케이2K
59. (spring/스프링) [유틸 파일] - http get, post 쿼리 파람 데이터 요청 포맷 String 리턴 실시프로파일 투케이2K ・ 방금 전 본문
Spring
59. (spring/스프링) [유틸 파일] - http get, post 쿼리 파람 데이터 요청 포맷 String 리턴 실시프로파일 투케이2K ・ 방금 전
투케이2K 2022. 6. 29. 22:40[개발 환경 설정]
개발 툴 : inteli j
개발 언어 : spring
[소스 코드]
// TODO [http get, post 쿼리 파람 데이터 요청 포맷 String 리턴 실시]
public static String queryStringUrlEncode (String url, Map<String, Object> params) {
/**
* // -----------------------------------------
* [queryStringUrlEncode 메소드 설명]
* // -----------------------------------------
* 1. http get, post 쿼리 파람 데이터 요청 포맷 String 리턴 실시
* // -----------------------------------------
* 2. 호출 방식 :
*
* String url = "http://jsonplaceholder.typicode.com/posts";
*
* Map<String, Object> map = new HashMap<>();
* map.put("userId", 1);
* map.put("id", 1);
*
* C_Util.queryStringUrlEncode(url, map);
* // -----------------------------------------
* 3. 리턴 데이터 :
* http://jsonplaceholder.typicode.com/posts?id=1&userId=1
* // -----------------------------------------
* */
// [리턴 데이터 선언 실시]
String returnData = "";
// [로직 처리 수행 실시]
try {
// [사전 인풋 데이터 널 체크 실시]
if (url != null
&& url.isEmpty() == false
&& url.length()>0
&& url.trim().equals("") == false
&& url.trim().equals("undefined") == false
&& url.trim().equals("null") == false
&& params != null
&& params.isEmpty() == false
&& params.size()>0){ // [널이 아닌 경우]
// [쿼리 파라미터 형식 주소 설정 실시]
returnData = url.trim();
if(returnData.endsWith("?") == true){
}
else{
returnData = returnData + "?";
}
// [파라미터 map 데이터 key, value 확인]
String paramData = "";
Set set = params.keySet();
Iterator iterator = set.iterator();
while(iterator.hasNext()){
if (paramData.length()>0){
paramData += "&";
}
String key = (String) iterator.next();
String value = String.valueOf(params.get(key));
// [리턴 변수에 순차적으로 삽입 실시]
paramData += URLEncoder.encode(key, "UTF-8");
paramData += "=";
paramData += URLEncoder.encode(value, "UTF-8");
}
// [최종 리턴 데이터 삽입]
returnData = returnData + paramData;
}
}
catch (Exception e){
e.printStackTrace();
}
// [로그 출력]
///*
System.out.println("\n");
System.out.println("================================================");
System.out.println("[CLASS] : "+String.valueOf(CLASS_NAME));
System.out.println("[METHOD] : "+String.valueOf("queryStringUrlEncode"));
System.out.println("[INPUT] : [URL] : "+String.valueOf(url));
System.out.println("[INPUT] : [param] : "+String.valueOf(params));
System.out.println("[RETURN] : "+String.valueOf(returnData));
System.out.println("================================================");
System.out.println("\n");
// */
// [리턴 데이터 반환 실시]
return returnData;
}
[결과 출력]
반응형
'Spring' 카테고리의 다른 글
61. (spring/스프링) Intelij 인텔리제이 툴 사용해 빌드한 War (와르) 파일 SFTP 사용해 즉시 배포 방법 (0) | 2022.07.08 |
---|---|
60. (spring/스프링) DB2 (db2) 데이터베이스 연결 설정 수행 실시 - gradle , application yml (0) | 2022.07.08 |
58. (spring/스프링) [유틸 파일] - map to http query param (쿼리 파람) 문자열 변경 실시 (0) | 2022.06.29 |
57. (spring/스프링) HttpURLConnection 사용해 http get 쿼리 파람 요청 실시 (0) | 2022.06.29 |
56. (spring/스프링) Slf4j 사용해 로그 (log) 출력 방법 설명 (0) | 2022.06.29 |
Comments