JsonArray->Json배열을 생성

JsonObject->Json 객체를 생성

 

array.toString(); ->Json 배열에 담겨있는 데이터들을 String형식으로 변환

 

 

import java.io.BufferedWriter;
import java.io.FileWriter;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonTestMain01 {
	public static void main(String[] args) {
		JsonDTO dto1 = new JsonDTO(10, "홍길동", 33, "광주시 서구 농성동", "010-1111-1111");
		JsonDTO dto2 = new JsonDTO(20, "박문수", 30, "광주시 남구 봉선동", "010-2222-2222");
		JsonDTO dto3 = new JsonDTO(30, "이순신", 50, "광주시 북구 용봉동", "010-3333-3333");
		
		JSONArray array = new JSONArray();		//JSON Array 객체 생성
		JSONObject object = new JSONObject();	//JSON Object 객체 생성
		
		object.put("member", dto1);	//DTO 객체를 JSON Object 객체로 변환
		array.add(object);			//JSON Object를 JSON Array에 등록
		
		object.put("member", dto2);
		array.add(object);
		
		object.put("member", dto3);
		array.add(object);
		
		String json = array.toString();	//JSON 형식의 내용을 화면에 출력
		System.out.println(json);
		
		//결과를 화면에 출력
		for (int i = 0; i < array.size(); i++) {
			JSONObject obj = array.getJSONObject(i);
			obj = obj.getJSONObject("member");
			JsonDTO dto = (JsonDTO) JSONObject.toBean(obj, JsonDTO.class);
			System.out.print(dto.getNum() + "\t");
			System.out.print(dto.getName() + "\t");
			System.out.print(dto.getAge() + "\t");
			System.out.print(dto.getAddr() + "\t");
			System.out.print(dto.getTel() + "\n");
		}
		
		//결과를 파일로 저장
		try {
			FileWriter fw = new FileWriter("member.json");
			BufferedWriter bw = new BufferedWriter(fw);
			bw.write(json);
			bw.flush();
			bw.close();
			fw.close();
			System.out.println("member.json 파일이 생성되었습니다.");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}//class

ArrayList 사용

 

import java.io.BufferedWriter;
import java.io.FileWriter;
import java.util.ArrayList;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonTestMain02 {
	public static void main(String[] args) {
		JsonDTO dto1 = new JsonDTO(10, "홍길동", 33, "광주시 서구 농성동", "010-1111-1111");
		JsonDTO dto2 = new JsonDTO(20, "박문수", 30, "광주시 남구 봉선동", "010-2222-2222");
		JsonDTO dto3 = new JsonDTO(30, "이순신", 50, "광주시 북구 용봉동", "010-3333-3333");
		
		ArrayList<JsonDTO> list = new ArrayList<>();
		list.add(dto1);
		list.add(dto2);
		list.add(dto3);
		
		//ArrayList<JsonDTO> → JSON 구조로 변환(JSON Object ▶ JSON Array)
		JSONArray array = JSONArray.fromObject(list);
		String json = array.toString();
		System.out.println(json);
		
		//결과를 화면에 출력
		for (int i = 0; i < array.size(); i++) {
			JSONObject obj = array.getJSONObject(i);
			//obj = obj.getJSONObject("member");
			JsonDTO dto = (JsonDTO) JSONObject.toBean(obj, JsonDTO.class);
			System.out.print(dto.getNum() + "\t");
			System.out.print(dto.getName() + "\t");
			System.out.print(dto.getAge() + "\t");
			System.out.print(dto.getAddr() + "\t");
			System.out.print(dto.getTel() + "\n");
		}
		
		//결과를 파일로 저장
		try {
			FileWriter fw = new FileWriter("memberList.json");
			BufferedWriter bw = new BufferedWriter(fw);
			bw.write(json);
			bw.flush();
			bw.close();
			fw.close();
			System.out.println("memberList.json 파일이 생성되었습니다.");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>브라우저 객체</title>
<script type="text/javascript">
	//브라우저객체(BOM,Browser Object Model)
	
	//setInterval(코드,시간간격):코드에는 작동도는 코드작성 대표적으로 함수,시간간격에는 1000이 1초를 의미함.
/* 	var i=0;
	var intv = setInterval(function(){
				i++;
				document.write(i);
	},3000); */
	
	//clearInterval(참조변수); //setInterval() 메소드를 그만 작동하고 싶을 때 쓰는 메소드
	//clearInterval(intv);
	
	//screen 객체:사용자의 모니터 정보(속성)을 제공하는 객체
	
	screen.width;	//화면 넓이
	screen.height;	//화면 높이
	screen.availWidth;	//작업표시줄을 제외한 화면의 너비값 반환
	screen.availHeight;	//작업표시줄을 제외한 화면의 높이값 반환
	screen.colorDepth;	//사용자 모니터가 표현 가능한 컬러bit 반환
	
	//location 객체:사용자 브라우저와 관련된 속성과 메소드를 제공하는 객체
	
	location.href="http://www.naver.com";	 //네이버로 이동
	document.write(location.href); //현재 주소 값 반환
	
	//history 객체:사용자가 방문한 사이트의 기록을 남기고 이전 방문 사이트와 다음 방문 사이트로 다시 돌아갈 수 있는 속성,메소드 제공
	history.length; //사용자가 방문한 사이트의 기록을 남긴 총 수량
	history.back();	//바로 이전 방문한 사이트 이동
	history.back(2); //두 단계 이전 방문한 사이트 이동
	history.forward(); //다음 방문한 사이트 이동
	history.forward(2); //두 단계 다음 방문한 사이트 이동
	hsitory.go(이동숫자); //+면 다음 -면 이전 방문한 사이트 이동
	
	
 </script>
</head>
<body>

</body>
</html>

'For developer > JAVASCRIPT' 카테고리의 다른 글

(JavaScript)문자열 객체  (0) 2020.04.11
(JavaScript)배열 객체  (0) 2020.04.11
(JavaScript)수학 객체  (0) 2020.04.11
(JavaScript)날짜 객체  (0) 2020.04.11
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>문자열 객체</title>
<script type="text/javascript">

//문자열 객체:문자형 데이터를 객체로 취급하는 것으로 자바스크립트에서 가장 많이 사용

/*문자열 객체 생성
 ①var t = new String("hello world");
 ②var t = "hello world";
 */
 
 var t ="My name is HyungGyu";
 
 //charAt(index):문자열에서 인덱스 번호에 해당하는 문자 반환
 document.write(t.charAt(3));  //->n반환
 
 //indexOf("찾을 문자"):문자열 왼쪽에서 부터 비교하여 찾을문자가 있으면 그 문자의 인덱스 번호 출력,만약 없으면 -1출력
 document.write(t.indexOf("is")); //-> 8 반환
 
 //lastIndexOf("찾을문자"):문자열 오른쪽에서 부터 비교하여 찾을 문자가 있으면 그 문자 인덱스 번호 출력,만약 없으면 -1출력
 document.write(t.lastIndexOf("is"));
 
 //match("찾을 문자"):문자열 왼족에서 부터 비교하여 찾을 문자가 있으면 그 문자 그대로 반환,만약 없으면 null 반환
 document.write(t.match("hyung")); //->null  반환
 document.write(t.match("Hyung")); //->Hyung 반환
 
 //replace("바꿀문자","새 문자"):바꿀문자가 문자열에 있으면 새 문자로 치환함.
 document.write(t.replace("My","your")); //-> your name is HyungGyu
 
 //slice(a,b):a개의 문자를 먼저 자르고 b부터 문자를 잘라서 남은 문자 반환,b자리에 -값이 있으면 뒤에서부터 카운트함.
 document.write(t.slice(3,7)); //->name 반환
 
 //substring(a,b):a 인덱스부터 b인덱스 이전!! 구간의 문자를 반환
 document.write(t.substring(3,7)); //-> name 반환
 
 //substr(a,문자개수):a인덱스부터 문자개수만큼 출력
 document.write(t.substr(8,2)); //->is 출력
 
 //split("문자"):지정한 문자를 기준으로 문자 데이터를 나누어 배열에 저장
 var arr=t.split(""); //-> 공백을 기준으로 나누어 배열에 저장
 
 //toLowerCase(); //모든 문자 소문자로 변환
 //toUpperCase(); //모든 문자 대문자로 변환
 
 //length : 문자열에서 문자의 개수를 반환(공백포함)
 document.write(t.length);
 
 //concat("새로운 문자") : 문자열에 새로운 문자열을 결합
 document.write(t.concat("thank")); //->My name is HyungGyuthank
 
 //charCodeAt(index):인덱스에 해당하는 문자의 아스키 코드값 반환
 //fromCodeAt():아스키 코드값에 해당하는 문자를 반환
 
 //trim():문자의 앞 또는 뒤에 공백 문자열 삭제
 
	
 </script>
</head>
<body>

</body>
</html>

'For developer > JAVASCRIPT' 카테고리의 다른 글

(JavaScript)브라우저 객체  (0) 2020.04.11
(JavaScript)배열 객체  (0) 2020.04.11
(JavaScript)수학 객체  (0) 2020.04.11
(JavaScript)날짜 객체  (0) 2020.04.11
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>배열 객체</title>
<script type="text/javascript">

//배열객체:여러 개의 데이터를 하나의 저장소에 저장할 때 쓰는 객체

//배열생성

//방식1
var d1 = new Array();
d1[0]=30;
d1[1]="따르릉";
d1[2]=true;

//방식2
var d2 = new Array(30,"따르릉",true);

//방식 3
var d3 =[30,"따르릉",true];

//배열 메소드

var line1=["녹동","소태","학동","남광주"];
var line2=["문화전당","금남로","양동시장","돌고개"];

 //join:배열에 저장된 값을 지정한 문자로 연결하여 하나의 문자열로 반환
var result1=line1.join("-");
//출력값: 녹동-소태-학동-남광주-문화전당-금남로-양동시장-돌고개

//concat:2개의 배열을 하나의 배열로 만들어 반환
var result2 = line1.concat(line2);
//출력: ["녹동","소태","학동,"남광주","문화전당","금남로","양동시장","돌고개"]

//slice(index1,index2):인덱스1부터 인덱스3 이전!!! 까지 반환
var result3 = line1.slice(1,3);
//출력: ["소태","학동"]

//sort:배열의 값을 오름차순으로 정렬
var result4 = line1.sort();

//reverse: 배열 순서를 거꾸로 뒤집음
var result5 = line1.reverse();

//pop:배열의 마지막 인덱스의 데이터를 가져올 때 사용
var result6=line1.pop();
//출력:남광주
 
//shift:배열의 가장 앞쪽 인덱스의 데이터를 가져올 때 사용
 var result7=line1.shift();
 document.write(result7);
 
 //push:data2에 저장된 데이터를 배열의 마지막 인덱스에 밀어 넣음
 var result8 = line1.push(data2);
 
 //unshift:data1에 저장된 데이터를 배열의 첫번째 인덱스에 밀어 넣음
  var result9 = line1.unshift(data1);
</script>
</head>
<body>

</body>
</html>

'For developer > JAVASCRIPT' 카테고리의 다른 글

(JavaScript)브라우저 객체  (0) 2020.04.11
(JavaScript)문자열 객체  (0) 2020.04.11
(JavaScript)수학 객체  (0) 2020.04.11
(JavaScript)날짜 객체  (0) 2020.04.11
<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>수학 객체</title>
<script type="text/javascript">

	//수학 객체:수학과 관련된 기능과 속성을 제공하는 수학 객체(Math object)
	
	var num=2.1234;
	
	var maxNum=Math.max(10,5,8,30);
	var minNum=Math.min(10,5,8,30);
	var roundNum=Math.round(num);	//소수점 첫째자리 반올림(2)
	var floorNum=Math.floor(num);	//소수점 첫째자리 내림(2)
	var ceilNum=Math.ceil(num);		//소수점 첫째자리 올림(3)
	var rndNum=Math.random(num);	//0과 1사이의 난수 발생
	var piNum=Math.PI;				//3.14
	
	//random 메소드와 floor메소드를 함께 사용하면 적절한 난수 사용 가능
	//Ex) var rnd = Math.random()*10=0이상 10미만 난수 발생
	// Math.floor(rnd)=0부터 9까지의 정수 출력
	// Math.ceil(rnd)=1부터 10까지의 정수 출력
</script>
</head>
<body>

</body>
</html>

'For developer > JAVASCRIPT' 카테고리의 다른 글

(JavaScript)브라우저 객체  (0) 2020.04.11
(JavaScript)문자열 객체  (0) 2020.04.11
(JavaScript)배열 객체  (0) 2020.04.11
(JavaScript)날짜 객체  (0) 2020.04.11

 

<!DOCTYPE html>
<html>
<head>
<meta charset="EUC-KR">
<title>날짜 객체</title>
<script type="text/javascript">

	//현재 날짜의 정보를 제공하는 Data 객체 생성
	var today = new Date();
	
	//특정 날짜의 정보를 제공할때의 객체 생성
	var day = new Date("2002/5/31");	//("연/월/일")
	
	//날짜 메서드
	//날짜 정보를 가져올 때(Get)
	document.write("연도:"+today.getFullYear()+"<br>");
	document.write("월:"+(today.getMonth()+1)+"<br>");	//월은 현재월에 1이 빠져서 나오기 때문에 1증가
	document.write("일:"+today.getDate()+"<br>");
	document.write("요일:"+today.getDay()+"<br>");	//일요일:0~토요일:6
	document.write("시간:"+today.getHours()+"<br>");
	document.write("분:"+today.getMinutes()+"<br>");
	document.write("초:"+today.getSeconds()+"<br>");
</script>
</head>
<body>

</body>
</html>

'For developer > JAVASCRIPT' 카테고리의 다른 글

(JavaScript)브라우저 객체  (0) 2020.04.11
(JavaScript)문자열 객체  (0) 2020.04.11
(JavaScript)배열 객체  (0) 2020.04.11
(JavaScript)수학 객체  (0) 2020.04.11

+ Recent posts