반응형

일일커밋은 정말 어려운것 같다........

내가 게으른것이지만.....



오늘은 시간이 많이 않아 간단히 지난번에 구축한 프레임 위에 뽐뿌를 추가 시켰다.

뽐뿌 또한 크롤링 한 데이터를 json으로 재 구축 후 화면에 json 데이터를 다시 리턴 시켰다.


@PostMapping("ppomppuDataCall")
public @ResponseBody
JSONObject ppomppuDataCall() {
/* json 객체를 담을 json 배열 */
JSONArray jsonArray = new JSONArray();
/* 최종 객체를 담을 json */
JSONObject finalJsonObject = new JSONObject();

try {
//TODO 추후 DB가 구축된다면 DB에서 값을 가져오자
File file = new File("C:/dev/txt/ppomppu.txt");
String URL = "http://www.ppomppu.co.kr/zboard/zboard.php?id=ppomppu";
Document doc = Jsoup.connect(URL).get();
Elements elem = doc.select(".list_title");
Collections.reverse(elem);

for (Element anElem : elem) {
/*새로운 JSON 객체 */
JSONObject tempJsonObject = new JSONObject();

int lastId = readFileId(file);

Element elem1 = anElem.parent();
Element elem2 = anElem.parent().parent().parent().parent().parent().parent().parent().child(0);

String subject = elem1.text();
String link = "http://www.ppomppu.co.kr/zboard/" + elem1.attr("href");
String No = elem2.text();

int sid = Integer.parseInt(No);
if (sid > lastId) {
System.out.println("sid =========" + sid);
System.out.println("subject =========" + subject);
tempJsonObject.put("sid", sid);
tempJsonObject.put("subject", subject);
tempJsonObject.put("link", link);
jsonArray.add(tempJsonObject);
//creatFileId(sid,file);
}
}
} catch (IOException e) {
e.printStackTrace();
}

finalJsonObject.put("ppompu", jsonArray);
System.out.println(finalJsonObject);
return finalJsonObject;

}




화면단에서는 

우선 뽐뿌 json 데이터를 리턴 받도록 ajax를 구축하고,

각 각 메뉴를 클릭시 기존에 리스트를 삭제하고, 새로 json 데이터 요청하고, 리턴 받은 json데이터를 가지고 다시 리스트를 그리게 구축 하였다.

<ul class="breadcrumbs">
<li onclick="ruriwebBtnClick()">루리웹</li>
<li class="separator">&nbsp;</li>
<li onclick="ppomppuBtnClick()">뽐뿌</li>
<li class="separator">&nbsp;</li>
<li>기타 등등</li>
</ul>
function ruriwebBtnClick(){
var $list_sector = $('#list_sector');
$list_sector.html('');
ruriwebDataCall();
}
function ppomppuBtnClick(){
var $list_sector = $('#list_sector');
$list_sector.html('');
ppomppuDatacall();
}

function ppomppuDatacall() {
$.ajax({
type: 'post',
url: "/ppomppuDataCall",
error: onError,
success: ppompuDataCall_onSuccess

});
}

function ppompuDataCall_onSuccess(resultData) {
$('#list_sector').html('');
$(resultData.ppompu).each(function () {
$('#list_sector').append("<button><span class=\"webname\">뽐뿌</span><br><span class=\"subject\">" + this.subject + "</span></button>")
})
}





여기까지가 이전에 메일을 이용해서 구축해 놓은 단계이다.

이후 단계에는 우선 aws, azure 등을 알아봐서 내 서버를 간단하게 구축을 해볼 생각이다.



반응형

+ Recent posts