Kosta 클라우드 네이티브 애플리케이션 개발 (CNA) 교육 17일차

2024. 12. 10. 17:40Kosta 클라우드 네이티브 어플리케이션 개발(CNA) 교육

JAVA

package com.lec;

import java.util.ArrayList;
import java.util.List;
import java.util.stream.Collectors;
import java.util.stream.IntStream;

public class chap11_collections2 {

	public static void main(String[] args) {
		
		EmpVo evo = new EmpVo();
		evo.setEmpno(7733);
		evo.setEname("SMITH");
		evo.setSal(1000);
		
		evo.toString();
		
		// EmpVo(int empno, String ename, int sal)
		EmpVo evo2 = new EmpVo(8888, "King", 5000);
		evo2.toString();
		System.out.println();
		
		chap11_collections2 c = new chap11_collections2();
		c.quiz1();
	
		
		
		
	}
	
	
	public void quiz1() {
		
		List<EmpVo> list = new ArrayList<>();
		
		
		for(int i = 1; i< 4; i++) {
			list.add(new EmpVo( i , "ADAMS"+i ,  i*1000 ));
		}
		
		list.forEach(emp -> emp.toString());
		
		
		List<EmpVo> list2 = IntStream.rangeClosed(1, 3)
			    .mapToObj(i -> new EmpVo(i, "ADAMS" + i, i * 1000))
			    .collect(Collectors.toList());
			   
		System.out.println();
		list2.forEach(emp -> emp.toString());  
		
		
//		for(EmpVo e : list) {
//			e.toString();
//		}
	}

	

	public static void canSel() {
		System.out.println();
		System.out.println("----------------------------");

	}

}

 

 

package com.lec;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class chap11_quiz {
	



	public static void main(String[] args) {
		
	
		chap11_quiz cq = new chap11_quiz();
//		cq.quiz1(); 
		cq.quiz2(); 
		
		
		
	}
	
	
	public void quiz2() {
		
		/*
		 * 	empno	ename	 sal
		 * 
		 *    1		ADAMS1	 1000
		 *    2		ADAMS2	 2000
		 *    3		ADAMS3	 3000
		 */
		
		
		List<Map<String, String>> list = new ArrayList<>();
		
		for(int i = 1; i< 4; i++) {
			
			Map<String, String> map  = new HashMap<>();
			map.put("empno", i+"");
			map.put("ename", "ADAMS"+i);
			map.put("sal", i+"000");
			list.add(map);
			
		}
		
		System.out.println();
		
		for(Map<String, String> maps : list) {
			maps.forEach((key, value) -> System.out.print(key + " = " + value + "\t"));		
			System.out.println();
			
		}
		
		
		
	}
	
	
	public void quiz1() {
		
		/*
		 * 	empno	ename	sal
		 * 
		 *  7876	ADAMS	1100
		 *  7499	ALLEN	1600
		 *  7698	BLAKE	2850
		 */
		
		List<Map<String, String>> list = new ArrayList<>();
		
		Map<String, String> map1  = new HashMap<>();
		map1.put("empno", "7876");
		map1.put("ename", "ADAMS");
		map1.put("sal", "1100");
		
		Map<String, String> map2  = new HashMap<>();
		map2.put("empno", "7499");
		map2.put("ename", "ALLEN");
		map2.put("sal", "1600");
		
		Map<String, String> map3  = new HashMap<>();
		map3.put("empno", "7698");
		map3.put("ename", "BLAKE");
		map3.put("sal", "2850");
		
		
		list.add(map1);
		list.add(map2);
		list.add(map3);
		
		
		for(Map<String, String> maps : list) {
			maps.forEach((key, value) -> System.out.print(key + " = " + value + " "));		
			System.out.println();
			
		}
		
		
		System.out.println();
		
		
		list.forEach(str -> 
						str.forEach((key, value) -> 
							System.out.println(key + " = " + value))
						);
		

		
	}
	
	

}

 

package com.lec;

import java.util.HashMap;

import com.fasterxml.jackson.databind.ObjectMapper;
import com.google.gson.Gson;
import com.lec.comm.Person;


public class chap12_Marshalling {
	/*
	 * 
	 * JSON (JavaScript Object Notation)
	 * - {key = value}
	 * 
	 * java.Map 
	 * - {key:value}
	 * POJO (Plain Old Java Object) : 순수 자바로 만들 수 있는 객체
	 */

	
	public static void main(String[] args) { 
	

		chap12_Marshalling c = new chap12_Marshalling();
		c.jackson();
		
		
	}
	
	public void jackson() {
		ObjectMapper mapper = new ObjectMapper();
		String jsonStr  ="{\"name\":\"John\",\"age\":20}";
		
		try {
			Person person = mapper.readValue(jsonStr, Person.class);
			System.out.println(person.toString());
		}catch (Exception e){
			System.out.println("오류");
		}
		
		
		
	}
	
	public void gson() {
		// .fromJson( Json객체, 문장, 타입/클래스 ) String -> Json객체
		// .toJson (Json객체, Object) : 객체 -> String
			Gson g = new Gson();
			
			Person person = new Person();
			person.setName("John");
			person.setAge(20);
			
			 String json =  g.toJson(person);
		        System.out.println(json);
		        
		        String jsonStr  ="{\"name\":\"John\",\"age\":20}";
		        g.fromJson(jsonStr, Person.class);
		        
		        g.fromJson(jsonStr, HashMap.class);
		        
	}
	
	

}



package com.lec.comm;

//Person.java 파일
public class Person {
 private String name;
 private int age;
 public Person() {};
 public String getName() { return name; }
 public void setName(String name) { this.name = name; }
 public int getAge() { return age; }
 public void setAge(int age) { this.age = age; }
@Override
public String toString() {
	return "Person [name=" + name + ", age=" + age + "]";
}
 
 
}

 

package com.lec;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/*
 * 절대경로
 * 상대경로
 * 
 * 구분자 
 * 		윈도우 : \
 * 		유닉스/리눅스 : /
 * 		자바 : \\ or /
 * 
 */

// 마커 인터페이스
//Serializable -> 구현을 안해도 impliment를 하면 직렬화가 된다

public class chap13_file {

	public static void main(String[] args) {
		// . : Context Root == prj_java
	
		
		
		String fileLocation = "C:\\IT\\STS3917\\STS3_WORKSPACE\\pij_java\\src\\com\\lec\\";
		
		
		String fname = "test";
		String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
		String fext = ".txt";
		
		String fullName = fileLocation+fname+timeStamp+fext;
		
		File f = new File(fullName);
		
		try {
			if(f.createNewFile()) {
				System.out.println("파일 생성 완료");
			} else {
				System.out.println("파일 생성 실패");
			};
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		} finally {
		}
		
		

				
				//class FileReader extends InputStreamReader
		
		try {
			FileWriter fw = new FileWriter(f);
			fw.write("동해물과 백두산이");
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		
		try {
			FileReader fr = new FileReader(f);
			while(fr.read() != -1 ) {
				System.out.println(fr.read());
			}
			int as = fr.read();
				System.out.println();
		} catch (FileNotFoundException e) {
				e.printStackTrace();
		} catch(IOException e) {
				e.printStackTrace();

		}
				
				
	}

}