http://swarchi.tistory.com/13
아이티란..늘 어둡고 불만만 많은 직업 같다. 그렇다고 누가 이일을 하라고 강요하지도 않았다. 난 좋다.. 난 늘 행복하게 개발자의 길을 걸을 것이다.
2012년 12월 4일 화요일
2012년 2월 2일 목요일
Java_Design Pattern 종류
1. Iterator
2. Adapter
ex)http://seonho.blogspot.fr/2012/01/2-adapter.html
3. Template Method
4. Factory Method
5. Singleton
6. Prototype
7. Builder
8. Abstract Factory
9. Bridge
10. Strategy
11. Composite
12. Decorator
13. Visitor
14. Chain of Responsibility
15. Facade
16. Mediator
17. Observer
18. Memento
19. State
20. FlyWeight
21. Proxy
22. Command
23. Interpreter
http://schwein7.tistory.com/entry/Design-Pattern%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4Java-%EB%94%94%EC%9E%90%EC%9D%B8-%ED%8C%A8%ED%84%B4%EC%9D%98-%EC%A2%85%EB%A5%98%EB%93%A4
에서 퍼온글이다.
2012년 1월 23일 월요일
eclipse-libsvn-java setting
난 /opt/eclipse를 놓고 사용한다.
윈도우 버튼 누르고 search에서 ubuntu software center 에서 libsvn-java를 검색한다.
설치한다.
저걸 설치한다. 그다음...
sudo gedit eclipse.init를 열어서 제일 아래에
-Djava.library.path=/usr/lib/jni 을 추가합니다.
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Djava.library.path=/usr/lib/jni <<< 이거를 추가합니다.
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
sudo gedit eclipse.init를 열어서 제일 아래에
-Djava.library.path=/usr/lib/jni 을 추가합니다.
-startup
plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Djava.library.path=/usr/lib/jni <<< 이거를 추가합니다.
-Dosgi.requiredJavaVersion=1.5
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m
2012년 1월 12일 목요일
ORACLE_여러개 PK
ALTER TABLE table_name ADD PRIMARY KEY (column1,column2); // column1,column2 를 pk로 묶음.
2012년 1월 7일 토요일
LINUX_디렉토리 구조
리눅스의 디렉토리에 구조는 유닉스의 디렉토리 구조를 따릅니다.
우분투도 리눅스의 자식이라 거의 같은 디렉토리를 사용합니다.
MS윈도우와 달리 리눅스의 디렉토리 구조는 매우 세분화 되어 있으며 같은 디렉토리도
다른 위치에 링크되어 있기 때문에 더욱 복잡합니다.
서브로 한단계만 들어가도 이해하기 힘들며 디렉토리 구조를 모두 이해하기란 결코 쉬운
일이 아닙니다.
글을 쓰는 저자도 이 방면에는 젠벵이라 10분의1도 모른다고 자신 있게 말할 수 있습니다.
일단 상위 디렉토리와 중요한 디렉토리만 간략히 살펴보도록 하겠습니다.
1. /bin
- bin은 binary(기계어) 라는 뜻으로 보통 실행파일을 의미합니다.
(MS윈도우의 경우 bin 파일이 /Windows, /Windows/System32 에 산재되어 있습니다.)
ls, cp, mv 등의 기본적인 콘솔 명령어가 이 곳에 위치합니다.
즉 $ cp hello.txt good.txt 는 $ /bin/cp hello.txt good.txt 과 같은 의미입니다.
여기에 있는 프로그램들은 시스템 파일이므로 지워서는 안 됩니다.
2. /boot
- 전원을 키고 부팅할 경우 필요한 파일들이 위치합니다.
커널에 대한 link, 기타 초기화 파일들이 있어 이 곳은 절대 손대면 안됩니다.
(MS도스의 IO.SYS 나 MSDOS.SYS로 이해하시면 편합니다.)
/boot/grub 은 부트메니저 grub의 설정이 들어 있습니다.
이 곳의 menu.lst 파일을 조작하면 부팅설정 변경이 가능합니다.
3. /dev
- dev는 device(장치) 라는 의미입니다.
이 곳에는 컴퓨터에 연결된 모든 장치가 파일로 표현되어 모여 있습니다.
리눅스는 입출력을 파일로 대신하는 구조로 이루어져 있습니다.
플로피나 하드드라이브는 MS윈도우에서 드라이브명(a:, c:) 을 할당 받지만
리눅스에서는 단지 단순한 파일로 대체됩니다.
/dev/fd 는 플로피이고 /dev/hd 는 하드디스크 /dev/mouse 는 마우스를 의미합니다.
프린터, 콘솔, 포트등도 모두 이 곳에 위치합니다.
( /dev/hda 는 첫번째 IDE 하드 디스크 전체이고, 그중 /dev/hda1 은
그 하드 디스크의 첫번째 파티션을 의미합니다. 요즘은 거의 sda로 대체되고 있습니다.)
4. /etc
- 이 곳은 리눅스의 거의 모든 설정 파일이 위치합니다.
여기 파일들을 조작해 프로그램 설정을 변경할 수 있습니다.
(MS윈도우의 레지스트리(Registry)에 해당합니다.)
전체 사용자의 암호를 갖고 있는 /etc/passwd, X Window, Fonts 설정파일이 있으며
우리가 사용하는 각종 프로그램의 설정 파일들이 이 곳에 위치합니다.
여기를 자주 들려야 리눅스 실력이 향상됩니다.
/etc/init.d 와 rcx.d
여기는 MS윈도우의 config.sys에 해당한다고 보시면 됩니다.
하지만 파일이 하나가 아니고 한 디렉토리가 꽉 찹니다.
리눅스 시작시 시동해야 할 데몬이나 스크립트들이 모여있습니다.
/etc/profile
MS윈도우의 autoexec.bat에 해당합니다.
여기서 프롬프트를 변경하거나 시작 프로그램을 추가할 수 있습니다.
/etc/fstab
파일 시스템의 마운팅 여부를 설정합니다.
하드나 파티션을 추가한 경우 이 곳의 설정을 변경합니다.
fstab은 시스템에 아주 중요한 파일이며 알아두면 아주 유용합니다.
5. /home
- 각 사용자들의 홈 디렉토리를 포함하고 있습니다.
예를 들어 hello 사용자의 홈 디렉토리는 /home/hello 가 됩니다.
/home/hello 아래에는 각 사용자의 개인설정 파일과 바탕화면, 문서등이 저장됩니다.
(MS윈도우의 /Documents and Settings 에 해당합니다.)
시스템을 다시 설치한다면 이 디렉토리는 백업해 두는 것이 좋습니다.
6. /lib
- 여기에는 시스템 전체 운영에 필수적인 공유 라이브러리가 들어 있습니다.
라이브러리란 프로그램이 실행될 때 가져다 쓰는 프로그램이라 생각하시면 됩니다.
파일을 추가만 하시고 삭제는 하지 마세요. 시스템이 멈출 수 있습니다.
7. /lost+found
- 파일 시스템을 체크하는 경우 잃어버린 파일(?)을 찾아서 이곳에 위치시킵니다.
8. /media
- 플로피나 CD, USB 메모리의 마운트 포인트로 활용됩니다.
(마운트 포인트는 마운트된 장치에 접근할 수 있는 디렉토리를 말합니다.)
마운트된 플로피의 내용을 보고 싶다면 이 곳을 찾으면 됩니다.
CD를 넣으면 이 디렉토리 아래 마운트 포인트가 생성됩니다.
9. /mnt
- 저장장치나 주변 장치의 마운트 포인트로 활용됩니다.
10. /opt
- 이 곳은 원래 상용프로그램이 위치하는 장소입니다.
11. /proc
- 여기 보이는 것은 실제 파일이 아니라 메모리에서 실행되고 있는 프로세스를 보여주는 곳입니다.
프로세스(process)란 실제 메모리에서 실행되는 프로그램이라 생각하시면 됩니다.
볼 수만 있는 것이 아니라 파일같이 이용해서 각 프로세스를 참조할 수도 있습니다.
이러한 방식을 리눅스의 가상 파일 시스템이라고 합니다.
12. /root
- root 계정 사용자도 홈디렉토리가 있습니다.
하지만 /home에 위치하지 않고 바로 이 곳 /root를 이용합니다.
이유는 남들이 함부로 들어오지 못 하도록 하기 위함입니다.
13. /sbin
- /bin 와 같은 개념이지만 시스템 관리자가 사용하는 파일들이 저장되어 있습니다.
("sbin"는 "safe binary"의 의미로 superuser만 사용해서 안전하다는 뜻입니다. )
fdisk, mkfs, init, halt 등 시스템 관련 파일이 위치합니다.
잘못 조작할 경우 전체 시스템에 이상을 초래할 수도 있습니다.
14. /srv
- 서비스 디렉토리로 주로 인터넷 관련 파일이 위치합니다.
15. /subdomain
- 서브도메인을 사용하지 않으면 비어 있습니다.
16. /sys
- 리눅스 시스템이 필요로 하는 파일들입니다.
손대지 않는게 좋습니다.
17. /tmp
- 임시 저장 파일을 담고 있습니다.
(MS윈도우 /temp와 같습니다.)
18. /usr
- /usr 는 시스템에 필수적인 요소는 아니지만 사용자에게는 아주 중요한 디렉토리입니다.
거의 모든 응용프로그램이 이 곳에 위치하며 일부 설정 파일도 들어 있습니다.
라이브러리도 존재하고 컴파일 환경도 위치하고 무엇보다도 X Window가 여기에 있습니다.
(MS윈도우의 /Program Files에 해당하지만 더 큰 의미를 가집니다. 리눅스는 X Window도
시스템이라기보다 응용프로그램으로 생각합니다.)
몇 가지 중요한 서브디렉토리를 살펴보겠습니다.
/usr/bin
우리가 사용하는 대부분의 응용프로그램이 이 곳에 위치함니다.
(적은 의미의 MS윈도우의 /Program Files에 해당합니다.)
/usr/X11R6
X 윈도우에 관계되는 모든 프로그램, 설정 파일, 그리고 지원 파일들이 들어 있습니다.
/usr/include
C 컴파일러에 대한 헤더 파일을 포함하고 있습니다.
/usr/lib
/lib와 같은 기능을 하지만 주로 응용프로그램에 관련된 라이브러리가 위치합니다.
/usr/local
과거에는 이 곳에 응용 프로그램이 많이 설치 되었지만 점차 사용이 줄어들고 있습니다.
/usr/share/man
메뉴얼 페이지를 저장하고 있는 디렉토리입니다.
하나씩 읽어보면(?) 배우는게 많습니다.
/usr/share/doc
설치된 프로그램에 대한 추가 정보를 볼 수 있습니다.
/usr/src
이 디렉토리는 컴파일 되지 않은 다양한 프로그램 소스들이 들어 있습니다.
이 곳에서 비디오 드라이버 모듈을 만들기도 하고 RPM을 만들어 내기도 합니다.
리눅스 커널 소스도 이 곳에 위치합니다.
19. /var
- 이 곳은 시스템 운영 도중에 파일 크기가 변하는 요소들을 담고 있는 디렉토리입니다.
간단히 말해 게임하다가 최고점이 나오면 점수를 여기에 저장합니다.
그 외에도 시스템 유지에 필요한 중요한 파일들이 이 곳에 위치합니다.
이상 간략하게(?) 디렉토리 구조를 알아 보았습니다.
보통 시스템 백업시 /home 과 /usr 를 백업하는데 이를 이용해서 시스템을 완전히
복구할 수는 없습니다.
차라리 문서나 자료만 백업하고 프로그램은 따로 설치하시는 것이 좋으리라 생각됩니다.
조금이나마 디렉토리 이해에 도움이 되었으면 합니다.
UNUNTU 11.10 elipse apt-get이 아닌 다운로드 설치
각박하게 설치에 대한 이야기부터 하지 않고 사견을 조금 밝히겠다.
자바가 이제 언어를 넘어서 플랫폼으로 폼을 잡기 시작한 2001년경 자바 진영의 상황은 그다지 밝지 않았다.
MS의 닷넷 플랫폼이 거의 동일한 뭐가 틀린지 아직 잘 모르겠는 플랫폼으로 자바 진영의 영역을 대체하려고 했다.
전문가들도 양분되서 어느 것이 맞는 플랫폼인지 싸우기 시작했고,
어느 열성 닷넷 지지자들은 곧 자바는 모두 닷넷으로 교체될 것이라고 이야기 했던 것으로 기억한다.
현재로 돌아와서 결과적으로 보자면 오픈 소스 진영은 더욱 굳건해졌고,
자바는 여전히 특정 위치에서 확고한 문화로 자리 잡고 있다.
여기에는 여러 요인이 있겠지만, 그중 개인적으로는 Eclipse라고 하는 잘 생긴 녀석의 공을 이야기 하지 않을 수 없다.
닷넷 진영이 2001년경 주장하던 닷넷 플랫폼의 위대한 개발 환경은 Eclipse에 비하면
편하나 위대하지는 않다는 것이 개인적인 생각이다. '-';; 어디까지나 주관이다.
그럼 이쁜 Ubuntu와 잘 생긴 Eclipse를 만나게 해 주자.
참고로 여기서 밝히는 방법은 apt-get을 이용한 방법이 아니다. >.<;;
먼저 http://www.eclipse.org에 접속해 보자.
들어가보면 뭘 어쩌라는 것인지 헷갈릴 것이지만 설치가 우선 목적이니 Downloads를 클릭한다.
기본 Eclipse SDK를 설치해도 되겠으나, 화면 오른쪽에 Popular projects를 보면
특정 목적을 위해서 플러그인들을 포함하고 있는 녀석들이 있다.
여기서는 많이 사용하는 Web Tools를 기준으로 설명하겠고
다운받는 WTP 파일 이름이 wtp-all-in-one-sdk-linux-gtk.tar.gz으로 가정하고 설명하겠다.
아래의 내용은 How to install Eclipse in Ubuntu에서 참조하고 인용한 것입니다. '0'/
자~ 다운받은 파일을 풀어보자.
>tar xzf wtp-all-in-one-sdk-linux-gtk.tar.gz
위와 같이 풀면 eclipse 디렉토리에 내용물을 풀어 놓는다.
>sudo mv eclipse /opt/eclipse
>cd /opt/eclipse
>chmod +x eclipse
위와 같이 이동하고 설정하면 Eclipse를 사용할 준비는 다 완료되어 있는 것이다. '-';; 간단하다...
그럼 /usr/bin/eclipse를 만들어서 기본적인 Path에 기본적인 설정을 사용해서 Eclipse를 구동할 수 있도록 하자.
>sudo vi /usr/bin/eclipse
>sudo chmod 755 /usr/bin/eclipse
기왕 폼 잡으려고 했으니 데스크탑 메뉴에도 추가하자.
>sudo vi /usr/share/applications/eclipse.desktop
위와 같이 설정해 줬다면 Ubuntu메뉴 프로그램 > 개발 > Eclipse가 생긴 것을 확인할 수 있다.
그럼 이제 Eclipse로 샤샤샥 즐거운 개발 놀이 시작하면 되시겠다~ ^0^~
참고로 Eclipse를 돌리는 JVM은 개인적으로는 Sun의 것을 사용하였다.
혹시 다른 JVM이 설치되었다거나 apt-get으로 Eclipse를 설치하면서 자동으로 다른 JVM이 기본 JVM으로 설정되어있다면 다음과 같이 변경할 수 있다.
>sudo update-alternatives --config java
http://blog.daum.net/_blog/BlogTypeView.do?blogid=0Lw0T&articleno=6273478#ajax_history_home 사이트에서 퍼왔음
자바가 이제 언어를 넘어서 플랫폼으로 폼을 잡기 시작한 2001년경 자바 진영의 상황은 그다지 밝지 않았다.
MS의 닷넷 플랫폼이 거의 동일한 뭐가 틀린지 아직 잘 모르겠는 플랫폼으로 자바 진영의 영역을 대체하려고 했다.
전문가들도 양분되서 어느 것이 맞는 플랫폼인지 싸우기 시작했고,
어느 열성 닷넷 지지자들은 곧 자바는 모두 닷넷으로 교체될 것이라고 이야기 했던 것으로 기억한다.
현재로 돌아와서 결과적으로 보자면 오픈 소스 진영은 더욱 굳건해졌고,
자바는 여전히 특정 위치에서 확고한 문화로 자리 잡고 있다.
여기에는 여러 요인이 있겠지만, 그중 개인적으로는 Eclipse라고 하는 잘 생긴 녀석의 공을 이야기 하지 않을 수 없다.
닷넷 진영이 2001년경 주장하던 닷넷 플랫폼의 위대한 개발 환경은 Eclipse에 비하면
편하나 위대하지는 않다는 것이 개인적인 생각이다. '-';; 어디까지나 주관이다.
그럼 이쁜 Ubuntu와 잘 생긴 Eclipse를 만나게 해 주자.
참고로 여기서 밝히는 방법은 apt-get을 이용한 방법이 아니다. >.<;;
먼저 http://www.eclipse.org에 접속해 보자.
들어가보면 뭘 어쩌라는 것인지 헷갈릴 것이지만 설치가 우선 목적이니 Downloads를 클릭한다.
기본 Eclipse SDK를 설치해도 되겠으나, 화면 오른쪽에 Popular projects를 보면
특정 목적을 위해서 플러그인들을 포함하고 있는 녀석들이 있다.
여기서는 많이 사용하는 Web Tools를 기준으로 설명하겠고
다운받는 WTP 파일 이름이 wtp-all-in-one-sdk-linux-gtk.tar.gz으로 가정하고 설명하겠다.
아래의 내용은 How to install Eclipse in Ubuntu에서 참조하고 인용한 것입니다. '0'/
자~ 다운받은 파일을 풀어보자.
>tar xzf wtp-all-in-one-sdk-linux-gtk.tar.gz
위와 같이 풀면 eclipse 디렉토리에 내용물을 풀어 놓는다.
>sudo mv eclipse /opt/eclipse
>cd /opt/eclipse
>chmod +x eclipse
위와 같이 이동하고 설정하면 Eclipse를 사용할 준비는 다 완료되어 있는 것이다. '-';; 간단하다...
그럼 /usr/bin/eclipse를 만들어서 기본적인 Path에 기본적인 설정을 사용해서 Eclipse를 구동할 수 있도록 하자.
>sudo vi /usr/bin/eclipse
#!/bin/sh export ECLIPSE_HOME="/opt/eclipse" $ECLIPSE_HOME/eclipse $*
>sudo chmod 755 /usr/bin/eclipse
기왕 폼 잡으려고 했으니 데스크탑 메뉴에도 추가하자.
>sudo vi /usr/share/applications/eclipse.desktop
[Desktop Entry] Encoding=UTF-8 Name=Eclipse Comment=Eclipse IDE Exec=eclipse Icon=/opt/eclipse/icon.xpm Terminal=false Type=Application Categories=GNOME;Application;Development; StartupNotify=true
위와 같이 설정해 줬다면 Ubuntu메뉴 프로그램 > 개발 > Eclipse가 생긴 것을 확인할 수 있다.
그럼 이제 Eclipse로 샤샤샥 즐거운 개발 놀이 시작하면 되시겠다~ ^0^~
참고로 Eclipse를 돌리는 JVM은 개인적으로는 Sun의 것을 사용하였다.
혹시 다른 JVM이 설치되었다거나 apt-get으로 Eclipse를 설치하면서 자동으로 다른 JVM이 기본 JVM으로 설정되어있다면 다음과 같이 변경할 수 있다.
>sudo update-alternatives --config java
http://blog.daum.net/_blog/BlogTypeView.do?blogid=0Lw0T&articleno=6273478#ajax_history_home 사이트에서 퍼왔음
피드 구독하기:
덧글 (Atom)
