본문 바로가기

JAVA79

[ JAVA ] Iterator Pattern ( iterator 패턴 ) iterator 패턴이란 for 문 대신 쓸 수 있는 반복문을 객체 지향에 맞게 디자인 패턴입니다. 보통 자바 코딩을 하면 while(iterator.hasNext()){ iterator.next(); } 요런 녀석들을 가끔 볼 수 있는데 이런 방식이 iterator 패턴 입니다. 일단 예제 UML 을 살펴 보면 입니다. 이것만 가지고는 복잡한 것 같지만 단순히 말하자면 BookShelf 클래스에스 Book 배열을 만들고 Book 배열에 Book 을 여러개 넣어 줍니다. 그리고 iterator 함수를 통해서 BookShelfIterator 를 return 받아서 while 문으로 반복문을 돌리는 방식 입니다. 이렇게 말로만 하면 더 미궁으로 빠지는 것 같은데 바로 예제 코드를 살펴 보겠습니다. =====.. 2013. 2. 18.
[ JAVA ] Singletern Pattern ( 디자인 패턴 ) 보통 멀티 쓰레드 환경에서 한 개의 객체만 가지고 사용하려고 할 때 쓰는 디자인 패턴 입니다. 하나의 클래스에 대해서 재생성 (new) 하지 않고 재활용만 하는 것이죠 보통 사용 방법은 ExecutorServiceThreadPoolStore executorServiceThreadPoolStore = ExecutorServiceThreadPoolStore.getInstance(); 이렇게 해서 getInstance 메소드의 return 값으로 받아내는 방법인데 자주 쓰이는 패턴입니다. 저는 디자인 패턴 중에 가장 많이 사용하게 되는 패턴이더군요. 여기에 맹점이 있는데 Singletern Pattern 에 대해서 인터넷을 찾아보면 쓰레드에 대해 안전하지 않게 엉뚱한 코드를 만들어서 보여주고 계신 분들이 계십.. 2013. 2. 18.
[ JAVA ] 일본어 파일 읽기 아래와 같이 shift_jis 캐릭터 셋으로 읽어들이니 읽을 수 있었습니다. InputStreamReader isr = new InputStreamReader(new FileInputStream(file_path+fileName), "shift_jis"); BufferedReader in = new BufferedReader(isr); 2013. 1. 29.
Illegal constant pool type 에러 Illegal constant pool type 에러 개발 pc : window 의 이클립스 실서버 : HP UX 1. java 소스에 특수 문자 또는 한글이 섞였을 때 2. 클래스 컴파일 버전과 실서버 JVM 버전이 다를때 3. class 파일 업로드시에 binary 로 설정 되지 않은 경우 (저의 경우엔 ftp 로 계속 아스키로 설정 되어 있었습니다. - 이런 초보적인 실수를...) 2013. 1. 18.