728x90
반응형
jsoup4.jsp
<%@page import="org.json.simple.JSONArray"%>
<%@page import="org.json.simple.JSONObject"%>
<%@page import="org.json.simple.parser.JSONParser"%>
<%@page import="org.jsoup.Jsoup"%>
<%@page import="java.io.IOException"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%-- /jsoup1/src/main/webapp/jsoup4.jsp --%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<style type="text/css">
table, td, th {border:2px solid grey; border-collapse:collapse;}
</style>
<title>Json형태를 table형태로 변경하여 출력하기</title>
</head>
<body>
<%
String url = "http://fx.kebhana.com/FER1101M.web";
try {
String kebhana = Jsoup.connect(url).get().text();
System.out.println(kebhana);
String strJson = kebhana.substring(kebhana.indexOf("{"));
JSONParser jsonParser = new JSONParser();
//json " {"날짜":.., "리스트":[{...}, {...}, ...]}
JSONObject json = (JSONObject) jsonParser.parse(strJson.trim());
//array " [{...}, {...}, ...]
JSONArray array = (JSONArray) json.get("리스트");
String html = "<table><caption>" + json.get("날짜").toString() + " 현재 환율</caption>";
html += "<tr><th>통화명</th><th>매매기준율</th><th>현찰파실때</th>"
+ "<th>현찰사실때</th><th>전신환보내실때</th><th>전신환받으실때</th></tr>";
for(int i = 0; i < array.size(); i++) {
JSONObject obj = (JSONObject) array.get(i); //{...}
String str = obj.get("통화명").toString();
html += "<tr><td>" + obj.get("통화명").toString() + "</td>";
html += "<td>" + obj.get("매매기준율").toString() + "</td>";
html += "<td>" + obj.get("현찰파실때").toString() + "</td>";
html += "<td>" + obj.get("현찰사실때").toString() + "</td>";
html += "<td>" + obj.get("송금_전신환보내실때").toString() + "</td>";
html += "<td>" + obj.get("송금_전신환받으실때").toString() + "</td></tr>";
}
out.println(html + "</table>");
} catch (IOException e) {
e.printStackTrace();
}
%>
</body>
</html>
728x90
반응형
'study > Java' 카테고리의 다른 글
[Jsoup] 27. 수출입은행 데이터에서 KRW, EUR, JPY(100), CNH, USD 데이터만 출력하기 (exam1.jsp) (0) | 2022.05.20 |
---|---|
[Jsoup] 27. 두산베어스 정보 조회하기 (jsoup5.jsp) (0) | 2022.05.20 |
[Jsoup] 27. 수출입은행 데이터 형태를 변경하여 출력하기 (jsoup3.jsp) (0) | 2022.05.20 |
[Jsoup] 27. KEB하나은행 환율정보 조회하기 (JSON형태) (jsoup2.jsp) (0) | 2022.05.19 |
[Jsoup] 27. 수출입은행 환율 정보 조회하기 (jsoup1.jsp) (0) | 2022.05.19 |