- DWR 설정
- Server Program
- JSON Simple
- 참고 문헌
JavaScript Framework인 DWR(Direct Web Remoting)을 정리 한다.
라이선스 :
플랫폼 :
DWR 설정
DWR 다운로드 사이트에서 dwr.jar 파일을 다운로드 한다.
dwr.jar 파일을 /WEB-INF/lib/ 폴더에 복사 한다.
Commons Logging 다운로드 사이트에서 commons-logging-1.1.1.jar 파일을 다운로드 한다.
commons-logging-1.1.1.jar 파일을 /WEB-INF/lib/ 폴더에 복사 한다.
JSON_Simple 다운로드 사이트에서 json_simple-1.1.jar를 다운르도 한다.
json_simple-1.1.jarr 파일을 /WEB-INF/lib/ 폴더에 복사 한다.
/WEB-INF/web.xml에 다음을 추가 한다.
dwr-invoker
org.directwebremoting.servlet.DwrServlet
debug
true
dwr-invoker
/dwr/*
/WEB-INF/classes/dwr.xml 파일을 생성 한다.
ContactService.java 파일을 생성 한다.
package com.jopenbusiness.gae.smartycontact.service;
import org.json.simple.JSONObject;
public class ContactService {
public JSONObject getHello() {
JSONObject obj = null;
obj = new JSONObject();
obj.put("name", "Hello World!");
return obj;
}
}
자동 생성되는 JavaScript 파일
Server Program
JSON Simple
다운로드 : http://code.google.com/p/json-simple/downloads/list
json_simple.jar
JSONObject
import org.json.simple.JSONObject;
JSONObject result = new JSONObject();
result.put("list", ~);
result.toString();
JSONArray
import org.json.simple.JSONArray;
JSONArray list = new org.json.simple.JSONArray();
list.add(tempObj); //--- GAE에서는 list.put(tempObj)을 사용 한다.
arg (문자열)을 파싱
주의 : 전달되는 문자열이 "name":"value" 형태일 때만 파싱된다. name:value는 파싱되지 않는다.
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.JSONValue;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;
//--- 간단한 방법
opt = (JSONObject) JSONValue.parse(arg);
//--- 복잡한 방법
Object obj = null;
try {
obj = parser.parse(arg);
opt = (JSONObject)obj;
} catch (ParseException e) {
e.printStackTrace();
}
Google App Engine에 있는 JSON Simple로 파싱
import com.google.appengine.repackaged.org.json.JSONArray;
import com.google.appengine.repackaged.org.json.JSONException;
import com.google.appengine.repackaged.org.json.JSONObject;
JSONObject obj = new JSONObject("JSON_문자열");
JSONObject menu = obj.getJSONObject(name); //--- obj.get(name);
String id = obj.getString(name);
JSONArray list = obj.getJSONArray(name);
참고 문헌
분류: JavaScript
Spring