<filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
Monthly Archives: 2월 2015
[Android/안드로이드] JSON Parser ( 제이슨 파서 )
– JSON 파서는 Java Script Object Notation 의 약자로, Java Script 에서 주로 사용하는 파서입니다.
– 웹에서 정보를 주고받는 경량화된 방법이며, XML 파서가 아닌 script 에서 사용하는 자료형에 대한 파싱이 가능하다.
<자체 포맷>
1. 배열 : 대괄호 안에 값을 콤마로 나열 ex) [1, 2, 3]
2. 객체 : 중괄호 안에 이름:값 형태로 ex) {“name”:”babo”, “age”:26}
3. 단순 값 : 수치, 문자열, 논리형, null 지원.
Object get (int index) int getInt (int index) String getString int index) boolean getBoolean (int index) JSONArray getJSONArray (int index) JSONObject getJSONObject (int index)
Object get (String key) int getInt (String key) String getString (String key) boolean getBoolean (String key) JSONArray getJSONArray (String key) JSONObject getJSONObject (String key)
예제를 보며 얘기하자.
String Json = "[8, 9, 6, 2, 9]"; try{ int sum = 0; JSONArray ja = new JSONArray(Json); for (int i = 0; i < ja.length(); i++){ sum += ja.getInt(i); } } catch (JSONException e){ ;}
String Json = "[{\"Product\" : \"Mouse\", \"Maker\":\"Samsung\", \"Price\":23000}," + "{\"Product\" : \"KeyBoard\", \"Maker\":\"LG\", \"Price\":12000}," + "{\"Product\":\"HDD\", \"Maker\":\"Western Digital\", \"Price\":156000}]"; try{ String result = ""; JSONArray ja = new JSONArray(Json); for (int i = 0; i < ja.length(); i++){ JSONObject order = ja.getJSONObject(i); result += "product: " + order.getString("Product") + ", maker: " + order.getString("Maker") + ", price: " + order.getInt("Price") + "\n"; } } catch (JSONException e){ ;}
[JAVA] 자바에서 JSON 사용방법
JSON 문자열로 변환하기
– JSON 객체를 생성
JSONObject jsonObj = new JSONObject();
– JSON 객체에 데이터 저장(복수저장 가능)
jsonObj.put("이름1", "내용1"); jsonObj.put("이름2", "내용2");
– JSON 객체를 전송할 문자열로 변환
String sendMsg = jsonObj.toJSONString();
여기서 만들어진 문자열을 전송시에 이용하시면 됩니다.
JSON 문자열 파싱하기
– JSON Parser 생성
JSONParser parser = new JSONParser();
– 넘어온 문자열을 JSON 객체로 변환
JSONObject jsonObj = (JSONObject)parser.parse(receiveMsg);
– JSON 객체에서 데이터 가져오기
String data1 = jsonObj.get("이름1").toString(); String data2 = jsonObj.get("이름2").toString();
이런 형태로 이용하면 된다.
## 추가내용 ##
JSON 배열 저장하기
– JSON 배열객체 생성
JSONArray jArr = new JSONArray();
– 여러개의 JSON 객체 생성
JSONObject obj1 = new JSONObject(); obj1.put("name","유준상"); obj1.put("sex","남"); JSONObject obj2 = new JSONObject(); obj2.put("name","티아라"); obj2.pub("sex","여");
– JSONArray에 담기
jArr.add(obj1); jArr.add(obj2);
– JSON 객체생성
JSONObject jObj = new JSONObject();
– JSON 객체에 배열을 담음
jObj.put("연예인", jArr);
– JSONArray 가져오기
JSONArray arr = (JSONArray)jObj.get("연예인")
– iterator를 가져와서 처리
Iterator it = outArr.iterator();
– 반복하여 존재하는 데이터 가져옴
while(it.hasNext()){ JSONObject o = (JSONObject)it.next(); }
참고로 JSON을 이용하기 위해서는 JSON 패키지를 설치하시고,
import org.json.simple.JSONObject; 를 포함 시켜서 이용하세요~
MySQL Replication 설정 및 테스트
http://javakorean.com/wp2/wp-content/uploads/2015/02/하이브레인넷-부설연구소-MySQL-Replication-설정과-몇-가지-테스트.pdf
출처 : 하이브레인넷-부설연구소—-MySQL-Replication-설정과-몇-가지-테스트
java에서 손쉽게 JSON을 사용한다. JSON.simple example – Read and write JSON
1. JSON.simple Dependency
Maven을 사용한다면 pom.xml에 설정하나로 central repository에서 받아오게 설정
<dependency> <groupId>com.googlecode.json-simple</groupId> <artifactId>json-simple</artifactId> <version>1.1</version> </dependency>
아니면 직접 json_simple-1.1.jar를 다운 받아서 클래스 패스 설정
http://code.google.com/p/json-simple/
2. Write JSON to file
import java.io.FileWriter; import java.io.IOException; import org.json.simple.JSONArray; import org.json.simple.JSONObject; public class JsonSimpleExample { public static void main(String[] args) { JSONObject obj = new JSONObject(); obj.put("name", "mkyong.com"); obj.put("age", new Integer(100)); JSONArray list = new JSONArray(); list.add("msg 1"); list.add("msg 2"); list.add("msg 3"); obj.put("messages", list); try { FileWriter file = new FileWriter("c:\\test.json"); file.write(obj.toJSONString()); file.flush(); file.close(); } catch (IOException e) { e.printStackTrace(); } System.out.print(obj); } }
Output : test.json
{ "age":100, "name":"mkyong.com", "messages":["msg 1","msg 2","msg 3"] }
3. Read JSON from file
import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.util.Iterator; import org.json.simple.JSONArray; import org.json.simple.JSONObject; import org.json.simple.parser.JSONParser; import org.json.simple.parser.ParseException; public class JsonSimpleExample { public static void main(String[] args) { JSONParser parser = new JSONParser(); try { Object obj = parser.parse(new FileReader("c:\\test.json")); JSONObject jsonObject = (JSONObject) obj; String name = (String) jsonObject.get("name"); System.out.println(name); long age = (Long) jsonObject.get("age"); System.out.println(age); // loop array JSONArray msg = (JSONArray) // jsonObject.get("messages"); Iterator<String> iterator = msg.iterator(); while (iterator.hasNext()) { System.out.println(iterator.next()); } } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } catch (ParseException e) { e.printStackTrace(); } } }
Output :
mkyong.com 100 msg 1 msg 2 msg 3
JSON String을 JSONObject로 변환하기
자바 또는 안드로이드 통신을 하기 위해
타입은 스트링(String)이지만 데이터 값은 JSON 상태를 가지고 있을 수 있다.
예) String test = {“text” : [ { “code” : “011”, “responsetext” : “응답입니다.” } ] }; (문법 무시)
이런식으로.
그러나 다른 객체 등과의 통신을 위해서 JSONObject 로 변환해야 할 때가 있다.
이 때는 이렇게 선언하면 된다.
JSONObject json = null;
json = new JSONObject(test);
간단하다.
이외에 JSON을 처리하는 코드는 다른 문서를 참조하자.
[jQuery] ajaxSubmit – 심플한 ajax 통신3
AJAX 파일전송 SUBMIT
입력단
var option = { type : "post", url : url, data : param, enctype: 'multipart/form-data', encoding : 'multipart/form-data', success : callback }; $("#almFollowUPForm").ajaxSubmit(option); controller 단에서 int result = businessService.almFollowUpInsert(almFlwUpSearchBean); response.setStatus(HttpServletResponse.SC_OK); response.setContentType("text/html"); response.getOutputStream().println(result);
[jQuery] ajaxSubmit – 심플한 ajax 통신2
function comboChange() { var options = { success : showInitResponse, url : "/path/test.action", contentType : "application/x-www-form-urlencoded;charset=UTF-8", type : "post", /* get, post */ dataType : "html" /* xml, html, script, json */ }; $('#INIT').ajaxSubmit(options); } // post-submit callback function showInitResponse(responseText, statusText) { //submit후 작업부분 document.getElementById('result').innerHTML = responseText; }
<s:form name="INIT" action="INIT" theme="simple" method="post"> <s:select id="apiId" name="apiId" list="#{'INBO01':'INBO01', 'INTC02':'INTC02'}" onchange="javascript:comboChange();"></s:select> </s:form> <div id="result"/>
[jQuery] ajaxSubmit – 심플한 ajax 통신
이번 포스팅은 jQuery의 ajaxSubmit 함수닷 !
이전에는 ajax 통신에 ajax 함수나 post 함수를 써서 데이터 주고받고 했었는데,
입력 폼이 있고 그 폼값으로 submit 할때에는 이 ajaxSubmit 함수가 더 유용하다.
이 함수를 사용하면 submit 이전에 처리할 작업과 submit 후의 작업을 따로 정리할 수 있어서 소스 가독성도 높일 수 있다 !
// ajaxSubmit 사용하기 // ajaxSubmit Form <form id="frmApply" method="post" action="./testAjax.html" onSubmit="return false;"> <input type="hidden" name="f_data1" value=""> <input type="hidden" name="f_data2" value=""> <input type="hidden" name="f_data3" value=""> <input type="hidden" name="f_data4" value=""> </form> // ajaxSubmit Call Button <a href="#" id="ajaxSubmitBtn" >ajaxSubmit Call</a> // javascript ajaxForm controll <script type="text/javascript"> var options = { beforeSubmit : "", success : "", dataType : 'json' }; $(function(){ $("#ajaxSubmitBtn").click(function(e){ e.preventDefault(); apply(); }); }); function apply() { // ajaxSubmit Option options = { beforeSubmit : applyBefore, // ajaxSubmit 전처리 함수 success : applyAfter, // ajaxSubmit 후처리 함수 dataType : 'json' // 데이터 타입 json }; // frmApply Form Data값을 testAjax.html 으로 ajax 전송 $("#frmApply").ajaxSubmit(options); } function applyBefore(formData, jqForm, options) { // ajaxSubmit 전 처리 작업 영역 return true; } function applyAfter(objResponse, statusText, xhr, $form) { if (statusText == "success") { // ajax 통신 성공 후 처리영역 if (objResponse.strResult == "SUCCESS" ) { // 리턴받은 json 배열의 strResult 값이 "SUCCESS"일 경우 처리영역 } else { // SUCCESS 이외의 값으로 리턴됐을 경우 처리영역 } } else { // ajax 통신 실패 처리영역 } } </script> remote = origin merge = refs/heads/br1
Eclipse 에서 git pull 실행 시, The current branch is not configured for pull 에러 발생
위 메세지는 보통 eclipse 에서 새로운 브랜치를 만들고, 브랜치를 push 한 경우에 발생한다.
이러한 경우 새롭게 만든 브랜치에 대해서 merge 관련 설정을 추가해주면 문제가 해결된다.
예를 들어, br1 이란 branch를 만든 경우 다음과 같은 설정을 추가한다.
br1 remote = origin merge = refs/heads/br1
설정을 추가하는 것은 Git Repositories view에서 .git/config 파일에 위처럼 적어주어도 되고,
Git Repositories view에서 local repository의 Property에서 적어주어도 된다.