JAVA/Java
Restful API 개발 (2) 정보 조회
JENN_tech7
2022. 3. 25. 16:42
728x90
SMALL
ApiController.java
@RequestMapping(value="/api/{name}/{id}/list", produces = {ApiConst.APPLICATION_JSON_VALUE})
@ResponseBody
public Map selectList(@PathVariable("name") String name,@PathVariable("id") String id) throws Exception {
HashMap finalresultMap = new LinkedHashMap();
HashMap header = new LinkedHashMap(); //상태코드
HashMap resultMap = new LinkedHashMap(); //데이터
String resultCode = "00";
String tn = ApiConst.ApiNameMap.get(name) + id;
try{
header.put("returnAuthMsg", ApiConst.ApiResultMap.get(resultCode));
header.put("returnReasonCode", resultCode);
List list = apiService.selectList(tn);
resultMap.put("header",header);
resultMap.put("data",list);
finalresultMap.put(name+id, resultMap);
}
catch (Exception e) {
....
}
return finalresultMap;
}
url에서 받은 name과 id를 통해 동적으로 매핑하는 방법을 썼다
테이블이 4개인데 구조는 똑같이 때문이다
url에서 테이블명을 그대로 받는건 좀 그렇기 때문에 조금 변형시켰다
또 불러올 때 공공데이터포털처럼 이름 : header, item이 있는 형태로 만들고싶어서 저렇게 map안에 map넣어서 함
<!--전체리스트 출력-->
<select id="selectList" resultType="java.util.HashMap" parameterType="String">
SELECT * FROM ${value}
</select>
sql문은 간단
모두 불러오면됨
728x90
LIST