원문 : BlockingQueue java.util.Queue 는 개체를 꺼내오고자 할 때 해당 Queue 가 비어있지 않을 때까지 기다리거나, 개체를 저장하고자 할 때, 해당 Queue에 공간이 생길 때까지 기다리도록 하는 동작을 부가적으로 제공합니다. (java.util.Queue에서 제공하고 있는 삽입, 제거 관련 method 는 add, remove, offer, poll입니다. add와 remove의 경우, 개체를 저장해야 하는데, 저장할 공간이 부족하거나, 개체를 꺼내와야 하는데, 개체가 없을 때, Exception 을 발생시키고, offer와 poll의 경우는 false와 null을 반환합니다. 위의 내용이 정확히 무슨 내용인지 모르겠지만, offer와 poll을 이용해서, 기다리도록 하는 ..
이 글은 Java Developer's Journal 2005 03의 Log4J and Java Util Logging을 대강 해석한 글입니다. 대강대강, 정반대의 의미로 써놓았을 수도...... 저자 : Joe McNamara ( jem@quantumleap.us ) Log4j 에 대한 소개 Log4J 는 Apache Software Foundation 의 Logging Services Project의 하위 프로젝트로 개발되었습니다. 1990년 대에 IBM에서 개발된 logging library에 기초하여 만들어졌으며, 1999년에 첫 버전이 발표되었습니다. JBoss와 Hibernate를 비롯한 오픈 소스 프로젝트에서 폭넓게 사용되고 있습니다. Log4j 는 loggers, appenders, lay..
Arthur : van Hoff Sun의 자바 개발 팀. 검색해보면 이 사람에 관한 글을 많이 볼 수 있음. 왼쪽에 있는 사람이 van Hoff. 딱 봐도 고수같다. primivite type boolean 의 Wrapper Class. Serializable 인터페이스와 Comparable 을 구현 Comparable Interface Implementation 이 코드가 좀 독특한데, Comparable Interface의 JavaDoc을 보면, 두 클래스의 natural order가 같을 경우 0을, less than 일 경우 음수를, greater than 일 경우 양수를 반환한다. 이 method는 Collections.sort를 이용하여 List 또는 배열을 정렬할 수 있다. ArrayList..
http://www.sdnkorea.com/blog/232에 가보면 해당 플랫폼을 위한 자바 버츄얼 머신의 비표준 옵션에 관련된 설명입니다. 이 글은 가비지 컬렉션을 프로그램 내에서 실행시킬 수 있는 방법을 찾다가 읽게 되었는데, 그래서 이 글의 요점은 System.gc() 를 이용해서 청소기를 실행시키는 방법입니다. 저는 자바를 이용해서 간단한 텍스트 마이닝을 하고 있습니다. 텍스트를 많이많이 메모리에 올리고, 거기서 단어를 추출해서 다시 많은 단어가 메모리에 올라가고, 그 단어들에 대해서 tfidf 를 계산해서 다시 메모리에 다 올리고...하는 통에 많은 메모리를 사용하게 되었습니다. -Xmx1024M 옵션을 사용하게 되었습니다. 그러나 안심한 것도 한 순간. 초초보인 제가 짠 프로그램은 1024M를..
java.util.ArrayList 평소에 많이 사용했었는데, 소스를 보는 것을 처음인 것 같습니다. 윈도우에서 이클립스를 사용할 때 소스를 보려면 jdk폴더에 들어 있는 src.zip 파일을 연결해줘야 하는데 이 방법을 구글에서 검색해보기 귀찮아서 잊은 척하고 있다가 어제 프로젝트 데모가 끝나서 여유로운 마음으로 소스를 연결해줬습니다. ArrayList 코드는 생각보다 간단하더군요. 그리고 정말 ArrayList가 들어 있습니다. ㅡㅡㅋ 당연한건가. Josh Bloch, Neal Gafter가 author로 되어 있네요. AbstractList를 확장하고, List, RandomAccess, Cloneable, java.io.Serializable을 구현하고 있습니다. Serializable을 구현하기..
구글에서 검색해보니 Inet Address inetaddr = InetAddress.getLocalHost(); inetaddr.getHostAddress(); 를 리눅스에서 사용하면, 127.0.0.1을 반환해 주는데, 이 주소는 LoopBack 주소를 말합니다. 윈도우에서는 실제 설정해놓은 ip를 반환한다고 합니다. LoopBack 주소를 반환하는 것은 합당하다는 글이 좀 있었는데. 어쨌거나 제가 하고 싶은 것은 메시지 기반 통신에서 필요할 때마다 ServerSocket을 띄우고 메시지를 받을 Agent에게 접속할 ip와 port를 알려주어서 Binary File을 받아가게 하고 싶은 것입니다. 이를 위해서 NetworkInterface.getNetworkInterfaces()를 사용했습니다. 이 정..
학교 프로젝트에서 만들고 있는 자바 프로그램의 패키지 이름을 어떻게 만들까 생각하다가, 구글에서 검색해서 http://en.wikipedia.org/wiki/Java_package에 들어갔다가 여기서 다시 http://java.sun.com/docs/codeconv/html/CodeConventions.doc8.html에 들어갔습니다. 아래 내용은 위 페이지의 내용과 같습니다.(거의) Naming convention은 프로그램을 읽기 쉽게 만들어 이해하기 쉽도록 해준다. 또한 상수, 패키지, 클래스 인지를 쉽게 구분할 수 있게 되어 코드를 이해하는데 도움을 준다. Packages 최상위 패키지 이름은 소문자 ASCII 문자만 사용해야 하며, 최상위 Domain name 중에서 사용해야 한다. 현재는 co..
http://en.wikipedia.org/wiki/Java_Community_Process Java Community Process(JCP)는 1998년에 창립되어 관심을 갖고 있는 모임들이 자바 플랫폼의 기능들과 차기 버전에 대한 정의이 참여할 수 있도록 허락하고 있는 공식 과정(a formalized process)입니다. JCP는 자바 플랫폼에 더해지기 위해서 제안된 명세들과 기술들에 대한 공식 문서인 Java Specification Request(JSR)을 포함하고 있습니다. JSR들의 공식 답변들은 JSR이 'final'이 되기 전에 처리되고, JCP Executive Commitee 에서 찬반투표를 거칩니다. 'fianl' JSR들은 그 기술에 대한 소스 코드와 API 명세를 검증하기 위한..
이클립스에서 서드파티 라이브러리를 활용하는 단일 실행 파일을 생성할 때 유용한 플러그인입니다. 클래스패스 옵션으로 잘 해보려고 했지만, 잘 이해가 안되서 결국 이 플러그인으로 해결했습니다. 시간나면 클래스패스에 대해 더 공부해봐야 겠습니다. http://sourceforge.net/projects/fjep 구글에서 검색하니 일단은 위 링크에서 받을 수 있습니다. 다운받아서 eclipse/plugins폴더에 압축을 풀고, eclipse를 다시 실행하시면 될 겁니다. 안되면 이클립스를 실행할 때 eclipse -clean 옵션을 사용해 보시기 바랍니다. Package Explorer에서 eexport -> other -> Fat Jar expoter 다음은 프로젝트를 선택합니다. 그 다음, 메인 클래스와 e..
- Total
- Today
- Yesterday
- tsclient
- 출력드라이버
- Arrays
- xml2
- Eclipse
- 모토로이
- Numbering
- pl/java
- OpenJDK6
- Fedora 9
- GMT
- SimpleDateFormat
- Linux
- OO3
- 파란 화면을 보았니
- 다음팟인코더
- smplayer
- userguide
- output driver
- 병합정렬
- gl2
- subervsion
- 리눅스
- PostgreSQL
- IcedTea6
- yum update
- openoffice
- JavaMail
- Java
- Fedora 8
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |