Java
[자바/JAVA] 프로그래밍 - Network_서버, 클라이언트 통신
* 현재 구동중인 서버가 있으면 클라이언트 그 서버로 요청 보낼 수 있음! => 응답결과 돌려줌 - 요청과 응답에 의해서 프로그램은 돌아감! ("통신"한다 표현) - 웹에서의 통신방식 : HTTP 프로토콜 통신 * 자바만을 가지고 서버와 클라이언트 간의 간단한 통신 해보기!! 이때 데이터를 입출력하고자 한다면 서버와 클라이언트 간의 스트림(연결통로)이 필요함! * 소켓 : 프로세스간의 통신을 담당하는 것! (스트림을 연결하기 위한 문) * 소켓 프로그래밍 (TCP 방식 / UDP 방식) - TCP 방식 : 데이터 전송속도가 느림! 데이터가 정확하고 안정적으로 전달 가능함! (신뢰성이 요구되는 프로그램 : http, 이메일) (클라이언트가 요청하고 서버가 응답하는 느낌) - UDP 방식 : 데이터 전송속도..
[자바/JAVA] 프로그래밍 - Network_InetAddress
네트워크(Network) : 여러대 컴퓨터들이 연결되어 있는 통신망 같은거 => 이런 네트워크를 통해 서로간의 데이터 교환 가능!! * IP 주소 : 네트워크 상에 각 컴퓨터들을 식별해줄 수 있는 번호(컴퓨터 주민번호) 서버와 클라이언트 > 서버 : 클라이언트(고객)에게 서비스를 제공해주는 프로그램 ( 클라이언트의 요청을 처리해서 응답해주는) : 서빙하는 역할함.. > 클라이언트 : 서버에 요청하는 컴퓨터 (서비스를 제공 받는 고객) - 서버에 요청하기 위해서는 그 요청하고자 하는 서버의 IP주소(또는 도메인명), 포트번호 알아야 됨! InetAddress : 네트워크 정보(ip주소 관련)를 확인 할 수 있는 클래스 InetRun Class package com.kh.chap01_inet.run; imp..
[자바/JAVA] 프로그래밍 - 종합 예제 (도서관 프로그램)
Book Class package com.kh.library.model.vo; public class Book { private String bNo; private String title; private String author; private String publisher; private int price; private String description; public Book() {} // 단축키로 생성해보기 public Book(String bNo, String title, String author, String publisher, int price, String description) { super(); this.bNo = bNo; this.title = title; this.author = au..
[자바/JAVA] 프로그래밍 - 종합 예제(MVC)
MVC패턴 : 각 클래스마다 역할을 부여해서 작업(데이터, 화면, 요청처리)을 부여해서 작업 => 유지보수 용이하다 - M(Model) : 데이터를 담당하는 역할(데이터를 담기위한 클래스, 비즈니스 로직 처리하기 위한 클래스, 데이터가 보관되어 있는 보관함과 연결해서 입출력) - V(view) : 화면을 담당하는 역할 즉, 사용자에게 보여지는 시각적인 요소 (출력문(print), 입력문(Scanner)) - C(controller) : 사용자가 요청한 내용을 처리한 후 그 결과를 돌려주는 역할 (출력문 같은 거 안쓸꺼임!!) 예제) 메뉴 1. 새로운 곡 추가 2. 곡 전체 조회 3. 특정곡 삭제 4. 특정곡 검색 5. 특정곡 수정 0. 프로그램 종료 Music Class package com.kh.cha..
[자바/JAVA] 프로그래밍 - Map (HashMap, Properties)
Snack Class package com.kh.chap03_map.part01_hashMap.model.vo; public class Snack { private String flavor; private int calory; public Snack() { } public Snack(String flavor, int calory) { super(); this.flavor = flavor; this.calory = calory; } public String getFlavor() { return flavor; } public void setFlavor(String flavor) { this.flavor = flavor; } public int getCalory() { return calory; } publi..
[자바/JAVA] 프로그래밍 - 컬렉션(Collection)_HashSet
Student Class package com.kh.chap02_set.part01_hashSet.model.vo; public class Student { private String name; private int age; private int score; public Student() { } public Student(String name, int age, int score) { super(); this.name = name; this.age = age; this.score = score; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() {..
[자바/JAVA] 프로그래밍 - 컬렉션(Collection) 실습 예제
[문제 1] 다음과 같은 조건을 만족하는 프로그램을 작성 하시오 Dog Class package com.kh.practice.list.model.vo; public class Dog { private String name; private int age; private String kind; public Dog() { } public Dog(String name, int age, String kind) { super(); this.name = name; this.age = age; this.kind = kind; } public String getName() { return name; } public void setName(String name) { this.name = name; } public int ..
[자바/JAVA] 프로그래밍 - 컬렉션(Collection)_ArrayList
컬렉션이란? 자료구조 개념이 내장되어 있는 클래스로 자바에서 제공하는 "자료구조"를 담당하는 "프레임워크"이다. - 자료구조 : 방대한 데이터를 보다 효율적으로 관리(조회, 정렬, 추가, 수정, 삭제) 할 수 있도록 도와주는 개념 - 프레임워크 : 이미 만들어져있는 틀(뼈대) => 그냥 가져다 쓰면 됨 * 배열의 단점과 컬렉션의 장점 > 배열의 단점 1. 배열은 우선 크기를 지정해야됨!! 한번 지정된 크기를 변경할 수 없음!! 새로운 값을 더 추가하고자 한다면 새로운 크기의 배열을 만들고 기존꺼를 복사하는 코드를 직접 기술 2. 배열 중간 위치에 추가한다거나 삭제하는 경우 매번 값을 땡겨주는 복잡한 알고리즘을 직접 기술해야됨.. 3. 한 공간에 한 타입의 데이터만 저장 가능 > 컬렉션의 장점 1. 크기 ..