본문 바로가기

JAVA/Syntax

NetworkProgramming 실습 - FileUpLoad 서버 클래스 public class FileServerUpLoad { public static void main(String[] args) { // 서버단 프로그램 // 1.서버소켓 생성 ServerSocker : // 클라이언트가 연결하면 Socket을 생성해 주는 Socket Factory : 객체를 만들어주는 것 :Factory ServerSocket serverSocket = null; Socket socket = null; InputStream is = null;// 소켓으로 받아서is = socket.getInputStream(); FileOutputStream fos = null;// FileOutputStream 파일에다가 출력 try { // 포트번호를 넣어서 객체를 생성. serverS.. 더보기
Network 프로그래밍 IP 주소 : 네트워크에 연결된 컴퓨터들이 부여받은 주소 [IPv4 주소가 꽉차서 이제 IPv6로 넘어가는 추세] 네트워크 프로그래밍 과정 1. 연결 Socket = new Socket("IP주소" :String , portNo : int);ㄴ1.1 필요하면 필터를 추가한다.-- 파일을 읽어서 소켓으로 출력하는 패턴FileInputStream fis = new FileInputStream(new File(file));이라던지OutputStream os = socket.getOutputStream(); -- 소켓으로 받아 읽은 후, 파일에다 출력하는 패턴FileOutputStream fos = new FileOutputStream(new File(file));이라던지InputSt.. 더보기
I/O 입출력 클래스 살펴보기 연결은 이런 것들이 있다.◎ I/O - 입력과 출력 ①연결 -> ②읽기/쓰기(I/O) -> ③닫기(Close) ※통신기준 : 프로그램 ※통신대상 : 외부자원 ◎ Network - 컴퓨터와 컴퓨터의 통신 ①연결 -> ②읽기/쓰기(I/O) -> ③닫기(Close) ※프로그램이 외부에서 데이터를 읽어오는 단위 (1Byte) ◎ JDBC - DB.MS(데이터베이스) ①연결 -> ②읽기/쓰기(I/O) -> ③닫기(Close) 1. I/O의 분류하는 기준 3가지 1.1 입력(Input) : InputStream 1.2 출력(Output) : OutputStream 2.1 연결(Node) : Node Stream2.2 기능(Filter) : Filter Stream 3.1 바이트(Byte) 단위 : Byte Stre.. 더보기
예외처리 (Throwable) : Unchecked Exception과 Checked Exception 1. 예외란? (Error vs Exception)먼저 오류(Error)와 예외(Exception)의 개념을 정리하고 넘어가자.오류(Error)는 시스템에 비정상적인 상황이 생겼을 때 발생한다. 이는 시스템 레벨에서 발생하기 때문에 심각한 수준의 오류이다. 따라서 개발자가 미리 예측하여 처리할 수 없기 때문에, 애플리케이션에서 오류에 대한 처리를 신경 쓰지 않아도 된다.오류가 시스템 레벨에서 발생한다면, 예외(Exception)는 개발자가 구현한 로직에서 발생한다. 즉, 예외는 발생할 상황을 미리 예측하여 처리할 수 있다. 즉, 예외는 개발자가 처리할 수 있기 때문에 예외를 구분하고 그에 따른 처리 방법을 명확히 알고 적용하는 것이 중요하다. 오류 Error : 프로그램이 정상적으로 실행되지 못하는 상황.. 더보기
[java.util] Collection과 Map을 이용한 정렬하기(Sort) Collection과 Map의 종류는 다음과 같이 분류할 수 있다. List 인터페이스 → AbstractList , AbstractSequentialList , ArrayList , AttributeList , CopyOnWriteArrayList , LinkedList , RoleList , RoleUnresolvedList , Stack , Vector Set 인터페이스 → AbstractSet , ConcurrentSkipListSet , CopyOnWriteArraySet , EnumSet , HashSet , JobStateReasons , LinkedHashSet , TreeSet Map 인터페이스 → AbstractMap , Attributes , AuthProvider , Concurre.. 더보기
제네릭스(Generics) 제네릭스(Generics)는 자바 J2SE 5.0 이후에 도입된 개념이다.여기서는 제네릭스를 사용하는 방법에 대해서만 다룬다. 제네릭스를 만드는 방법은 입문서에 어울리지 않는 고급 주제이므로 이 책에서는 생략한다.다음과 같은 것이 제네릭스이다.ArrayList aList = new ArrayList(); 제네릭스가 도입되기 전인 J2SE 1.4 까지는 위의 코드를 다음과 같이 사용했다.ArrayList aList = new ArrayList(); 두 개 코드의 차이점은 ArrayList 라는 자료형 타입 바로 옆에 과 같은 문구가 있느냐 없느냐의 차이이다.※ JSSE 5.0 이후 버전에서 두번째 방법으로 코드를 작성해도 오류는 나지 않는다. 다만 제네릭스 타입을 명확하게 지정하라는 Warning 메시지가.. 더보기
가변인수 (String... args) JDK1.5 //가변인수 Varargs //-> testVarArgs("k"); 이렇게 하고 싶었음. 할 때마다 객체 생성하기 귀찮은 거임. //String... str 이렇게 사용한다. //몇개의 변수가 입력될 지 모르는 경우. //여러 타입의 매개변수를 선언하고 싶을 때, 가변인수는 마지막에 써야 한다. public void testVarArgs(string s, String... str, int a){ int length = str.length; for(String temp:str) System.out.println(temp); } 더보기
DataType & Type Casting (Primitive Type) 변수란? 하나의 값만을 가질수 있는 저장공간 변수의 선언 변수타입 변수이름;int count;변수명은 대소문자를 구별한다변수명은 숫자로 시작해서는 안되며, 특수문자는 '$'와 '_'만 허용한다. 변수의 타입종류와 크기 기본형 Primitive type논리형boolean 1btye 문자형 char 2byte 정수형byte 1byteshort 2byteint 4bytelong 8byte실수형 float 4bytedouble 8byte참조형 Reference type기본형을 제외한 나머지 타입 4byte 문자형 - char 유니코드(Unicode)문자 1개를 저장한다.특수문자 저장시 아래와 같이 표현한다.\t(tab), \b(backspace), \f(form feed), \n(new line), \r(car.. 더보기
HashMap 이용한 CustomerService 구현하기 VO를 구현하자! //Customer.java - VO public class Customer implements Serializable{ private String id; private String password; private String name; private String email; private String phoneNumber; private int mileage; public Customer() { super(); } public Customer(String id, String password, String name, String phoneNumber, String email, int mileage) { super(); this.id = id; this.password = password.. 더보기
접근제한자 (Access Modfiier) + : public- : private# : protected _ : 밑줄 은 satatic을 표기한다. 정보은닉의 대상 : Instance 변수 (private) 수정(변경) public void setVariable ([매개변수])public void setName(String name){ this.name = name;}조회 : public ReturnType getVariable() public String getName(){ return name;} Accessor 와 Mutator Accessor(Getter)accessor는 보통 게터라고 부르며 인스턴스 변수의 값을 리턴하는 역할을 합니다. Mutator (Setter)mutator는 보통 세터라고 부르며 인스턴스 변수의 값을 설정하는 역할.. 더보기