2009년 1월 17일 토요일

zbxe PPT 자료들

예전 발표때 사용하였던 zbxe PPT자료들입니다.

zbxe 공식사이트에 자료들을 많이 참조 하여 만든거라...
내공이 있으신 분들한테는 비추입니다.





2009년 1월 16일 금요일

PHP 4 & 5 마인드 맵

PHP 4 & 5의 핵심 정리 노트...

웹서핑하다가 우연히 발견한 PHP 4 & 5 마인드 맵입니다.
하도 오래전에 찾은거라 출처가 기억나지 않는군요. OTL...


2009년 1월 15일 목요일

The latest template of TOEFL iBT Writing

HY님한테서 최근 iBT Writing 템플릿을 받게 되었다.
참 고마운 분이다, 여러모로 많은 것을 받게 되었고 또한 많은것을 배우게 되었다. 사실 그렇지 않아도 습작에 필요한 나만의 템플릿을 만들려던 참이 였는데 如鱼得水인 격인듯 싶다.^^

아래의 템플릿은 A or B 두 사물의 차이점과 공통점 등을 논술 할때 많이 사용이 되어 진다.

타입 A
Depending on personal experience, personality type and emotional concern, we find that some people hold the idea of A meanwhile others prefer to B, from my point of view, it is more advisable to chose A rather than B. My arguments for this point are listed as follows.

The main reason for my propensity for A is that___________________________.就理由进行解释_____________________.For instance,____________________

Another reason can be seen by every one is that____________________________.就理由进行解释___________________For example,____________________

The argument I support in the first paragraph is also in a position of advantage because_____________________________

Although I agree that there may be a couple of advantages of B, I feel that the disadvantages are more obvious. Such as________________.

In a word, ________________________________________________.So, it is sagacious to support the statement that it is better to A.

타입 B
将原题复述___________________________________________When faced with the decision of A of B, quite a few would deem that______________________, but others, in contrast, believe A/B as the premier choice and that is also my point. Among countless factors which influence -A/-B, there are three conspicuous aspects as follows.

The main reason for my propensity fo _________is that___________________

The second reason can be seen by every person that________.

In addition, these reason are also usable when we consider that_________.

There are some disadvantages in____________________另一种观点的缺点__________.

In a word, _____________重复观点句并缩写理由__________________.Taking into account of all these factors, we may reach the conclusion that___________.

아래 템플릿을 하나의 관점을 두고 동의/부동의에 관한 템플릿이다.

타입 A
Some people argue as if it is a general truth that a _____________________________.But to be frank, I cannot agree with them. There are numerous reasons why I hold no confidence on them, and I would explore only a few primary ones here.

The main problem with this argument is that it is ignorant o the basic fact that______________解释本段中心___________.

Another reason why I disagree with the above statement is that I believe that______________.

What is more, some students are interested in____________.

In a word, ________________.

타입 B
Some people prefer to A, others believe B, Nowadays some may hold the opinion that ________________, but others have a negative attitude. As far as I am concerned, I agree/disagree that_______________. MY arguments for this point are listed as follows.

One of the primary causes is that_______________________.

Examples_______________.

But there is a fruther more subtle point we must consider. Examples.

What is more_______________. Examples___________

General speaking, __________. Recongizing the fact that _______________should drive us to conclude that______________.

2009년 1월 13일 화요일

테이블 죠인을 안한 상태에서 Projection을 세팅할때

Criteria를 사용할때 제목에 명시한 경우라면 아래 글이 조금이나마 도움이 될것입니다.

Criteria를 이용하여 projection을 설정하면 쿼리를 사용하는것보담은 보다 더 유연하게 원하는 필드의 데이타를 Fetch해올 수 가 있습니다.

하지만 보통은 여러테이블내의 데이타를 죠인하여 가져오는 경우에 대하여 테이블 죠인시 매 테이블 마다 개개의 별칭을 달아줍니다. 저 또한 이런 식으로 많이 코딩을 해왔었습니다.

하지만 DAO를 리펙터링 하는 도중 이상한 문제에 봉착했었습니다.
분명히 테이블 선언시 "a" 라는 별칭을 부여하였었는데 a.property 이런식으로 원하는 속성을 fetch하려니 존재하지 않는 속성이라는 에러가 자꾸 뜨지 뭡니까?

디버깅을 열심히 하는 도중 hibernate이 내부적으로 싱글테이블인 경우 자동으로 a라는 별칭을 무시하고 this라는 포인터를 통하여 POJO의 각 속성들을 접근할 수 있게끔 처리를 하고 있음을 알게 되었습니다.

이것땜에 삽질 반시간 정도는 했네요... ㅜㅜ

CPU Meter & Network Meter Gadget

Windows 7에서 가젯 사용기

Windows 7을 새로 설치하고 여러가지 가젯을 써보던 중 재미있는 넘을 발견하게 되었다. Windows 7 기본 제공해주고 있는 CPU Meter도 있었지만 그래프도 표시시켜주지 않고 달랑 퍼센테이지로만 CPU 사용율을 표시시켜주고 있다. CPU Meter을 사용하여 보니 페션테이지는 물론 사용율에 대한 수치를 직접 절선 그래프로 표시를 시켜주고 주고 있고 있다. 또한 CPU뿐만 아니라 RAM정보까지 일목요연하게 표시를 시켜 준다. CPU온도까지 측정하여 표시시켜줄수 있지만 별도로 SpeedFan이라는 프로그램을 설치하여야 한다. Windows 7 x64에서 테스트 해본 결과 블루스크린이 떠버린다. ㅠㅠ SONY일부 유틸리티들과 충돌이 나는듯 하다. 그래서 현재는 온도 측정 기능을 꺼놓은 채로 사용하고 있지만 나름 괜찮다.^^


이와 더불어 Network Meter도 배포하고 있었는데 Wired와 Wireless 두가지 버젼이 있는데 일단 집에서 사용하고 있는 네트웍이 Wired이기 때문에 Wired버젼만 다운로드 받아서 사용하고 있다 다운로드/업로드 속도를 KB단위로 표시를 시켜주고 있기에 참 편리한데 이로써 별도로 트래픽 모니터링 프로그램을 사용할 필요가 없다.

2009년 1월 12일 월요일

무스킨 위젯 개발시 알아둘 점들...

제로보드에 포함되어있는 위젯들을 보면 보통은 마지막 결과를 스킨파일(HTML파일)에 포워딩 시켜 출력을 해주는 형태이다. 하지만 어떤 경우에는 출력을 HTML파일이 아닌 기타 형식으로 해주고 싶다. 예하면 이미지나 워드, 엑셀문서와 같은...

보통 스킨을 지원해주는 위젯에서는 아래와 같이 템플릿 파일을 지정해준다.


// 템플릿의 스킨 경로를 지정 (skin, colorset에 따른 값을 설정)
$tpl_path = sprintf('%sskins/%s', $this->widget_path, $args->skin);
Context::set('colorset', $args->colorset);

// 템플릿 파일을 지정
$tpl_file = 'counter_status';

// 템플릿 컴파일
$oTemplate = &TemplateHandler::getInstance();
return $oTemplate->compile($tpl_path, $tpl_file);


하지만 무스킨 위젯에서는 직접 출력시켜줄 내용을 sprintf 함수로 출력을 시켜주면 그뿐이다.

// graph의 img 태그 값을 return
return sprintf('<img src="%s%s" border="0" alt="counter" />',  Context::getRequestUri(), $image_src);


영어 IDIOMS 학습자료 - 3

최근에 정리한 영어 IDIOMS...

1. A cat may look at a king
小人物也可以有些权利


2. Claw me and I'll claw thee
互相吹捧, 朋比为奸


3. Beauty is but skin deep
美丽只是外表


4. Enough is as good as feast
知足常乐


5. Early to bed and early to rise makes a man healthy, wealthy, and wise
早睡早起,可以使你健康,富裕,聪明


6. Facts are facts
事实就是事实


7. To see is to believe
眼见为实


8. Every man is the architect of his own fortune
自己的命运自己掌握


9. The pot calls the kettle black
责人严而律己宽


10. When sorrow is asleep, wake it not~
伤心旧事别重提


11. Her husband is confidence man
她的丈夫是骗子


12. Don't beat me around the bush
实话实说


13. After his ship came in, he went abroad
他发财后就出国了


14. He is a good sailor
他不会晕船


15. Before one can say Jack Robinson
一瞬间


16. Business is business
公事公办


17. Flew the coop
越狱


2009년 1월 11일 일요일

CentOS에 MySQL UTF-8 설치하기

소스컴파일방법으로 MySQL UTF-8 설치하기...


서버 셋팅을 하다 보면 참 편리한게 APM 패키지이다. CentOS경우는 rpm으로도 설치가 가능하며, 바이너리를 받아 설치하여도 아주 편리하게 이용할 수 있다. 하지만 나만의 MySQL을 위해서는 컴파일을 해서 설치하는 것도 좋은 방법인듯 하다. 프로파일  및 자동시작 외에는 솔라리스에서도 바로 적용이 가능할 것이다.

일단은.. 아래 사이트에서 MySQL 5.0을 다운받는다.

http://www.mysql.com/

소스코드를 다운 받고나서 압축을 풀고 다음과 같은 설정을 해준다.

X64일경우 PHP 컴파일시 에러가 발생하는 것을 막기 위하여 export CFLAGS='-fPIC' 를 먼저 날려준다.

./configure
--prefix=/usr/local/mysql \
--with-charset=utf8 \
--enable-large-files \
--localstatedir=/data/mysql \
--with-readline \
--with-extra-charsets=all \
--with-innodb \
--disable-shared \
--with-mysqld-user=mysql \
--with-unix-socket-path=/var/lib/mysql/mysql.sock \
--with-client-ldflags=-all-static \
--with-mysqld-ldflags=-all-static \
--without-debug \
--without-docs

--prefix=/usr/local/mysql
기본적으로 mysql 설치할 폴더를 정해준다.  실행파일이나, 설정파일을 따로 나눠 사용할 경우는 컨피규어 옵션에서 따로 다 설정해주어야 한다. 그런 경우는 모 ... 찾아보자면 ... 각 폴더에 모두 나누어 놓는 것도 사실 참 귀찮다.ㅡㅡ;

--with-charset=utf8
여기서 기본적으로 코드는 euc-kr을 쓴다. utf-8을 쓸 경우는.. 모 charset만 고쳐주면 될 것이다.

--localstatedir=/u01/data/mysql
mysql 데이터 파일 저장은 /u01/data/mysql 폴더에 해줍니다.  이건 없으면 mysql폴더 아래로 위치해지게 되겠다. 

--with-innodb
innoDB를 사용하려면 이 옵션을 꼭 넣어 주어야 한다.

--with-mysqld-user=mysql
mysql실행 유저를 결정한다.

--with-unix-socket-path=/var/lib/mysql/mysql.sock
요건 소켓파일의 위치를 알려준다. data쪽에 넣어 두지 말고 var폴더에 잘 넣어 주도록 하자.  tcp/ip대신 유닉스 소켓을 사용하여 최적의 성능을 끌어 낸다.

--with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static
컴파일 옵션으로 'CXX=gcc'를 사용할 때 오류를 피하기 위해 공유 라이브러리를 사용하지 않음

실행 성능을 높일 수 있다.

--without-debug
질의시 디버깅 코드를 사용하지 않기 때문에 빠른 속도를 얻어낼 수 있다.

configure을 실행한 후.. 모.. 컴파일을 해야 겠지.. 컴파일을 하자.

그다음에는.. make

make install을 해주자..(요놈은 root권한으로 해야 한다)

그럼 mysql은 설치가 다 되었다.

그 다음 할일은 무엇인가? 바로 mysql 사용자를 만드는 것이다.

이유는 mysql동작을 root가 아닌 mysql유저가 하도록 하는 것이다. 보안상의 문제~

groupadd dba
useradd -M -o -r -d /usr/local/mysql -s /sbin/nologin -c "Mysql Server" -u 27 -g dba mysql >/dev/null 2>&1 || :

그룹명은 mysql로 하는 것이 일반적이다. 근데 난 걍 dba로 할란다.

그 다음은 설치된 폴더에 대해 권한을 부여하자.

chown -R root:dba /usr/local/mysql
chown -R mysql:dba -R /var/lib/mysql/

그 다음에 mysql data가 저장될 폴더를 생성한다.

mkdir /data/mysql

다음은 초기 데이터를 생성해야 한다.

/usr/local/mysql/bin/mysql_install_db

그 이후 퍼미션도 조정해 준다.

chown -R mysql:dba /data/mysql

mysql을 실행한다.

/usr/local/mysql/bin/mysqld_safe &

다음은 root권한을 설정해 준다.

/usr/local/mysql/bin/mysqladmin -u root password 'new-password'

그 다음은.. 라이브러리에 등록한다.  물론 루트 권한으로..

echo /usr/local/mysql/lib/mysql >> /etc/ld.so.conf && ldconfig

mysqld 자동 시작을 위해 다음과 같이 스크립트를 복사해 준다.

cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld

다음은 자동 시작 등록을 해주자.

chkconfig --add mysqld
chkconfig --level 35 mysqld on (런레벨 35일때 자동 실행 된다)

마지막으로 익명접근권한을 삭제하자.. mysql 콘솔에 그냥 접근을 못하게 해야 한다.

 root 권한으로 접근하여.. mysql 데이터베이스를 선택한 후 다음 쿼리문을 실행한다.

delete from user where password = "";
그 후에 mysql을 재시작 한다 일단은 콘솔을 종료하고... 쉘에서..

mysqladmin -u root -p reload

다음은 설치파일의 support-files폴더에 있는 my.cnf파일을 복사한다.

cp my-large.cnf /etc/my.cnf // 메모리에 따라서 파일이 달라진다.

새로운 희망 '옌볜'

통일칼럼에 기재된 과기대관련된 기사이다...

사용자 삽입 이미지
    누구나 쉽게 할 수 있는 말이기는 하지만 위기를 기회로 만든다는 것은 결코 쉬운 일은 아니다.
남북경협 이 본격화된 이후 여러 번의 위기가 있었지만 북핵 문제로 야기된 6자 회담의 결렬과 국제사회의 북한에 대한 압박으로 우리는 상당한 위험과 어려움에 직면했다. 그런데 지금 6자 회담이 다시 모양새를 갖추고 핵 해결의 실마리가 보이는 듯하자 금강산과 개성공단을 비롯한 남북의 모든 관계를 접으라고 목소리를 높이던 사람들까지도 무언가 해보겠다고 나서는 상황이 오히려 염려스러운 측면도 있다.

 나는 그동안 북한 관련 사업을 추진해오면서 한때 극한적인 상황에 처하기도 했다. 하지만 열심히 해왔던 덕인지 조만간 큰 결실을 얻을 것 같다.

 중국 옌볜시와 조선족자치주에서 추진해 올해 10월 입주 예정인 26층 IT빌딩에 한국 기업이 들어갈 수 있는 5000평의 공간이 확보된 것이다.

   한국과 옌볜의 인건비 차이가 거의 7∼8배가 되는 상황에서 어떻게 하면 모두에 도움이 될 수 있는 사업을 할 수 있을지 고민하다 작년 초 옌볜과학기술대학 내에 동북아산학연구유한공사라는 법인을 설립했다. 옌볜과학기술대학의 졸업생을 선발해 지난 1년간 플랜트 설계 사업을 수행할 수 있는 엔지니어를 양성했으며 실제로 사업 현장에도 투입했다. 인터넷 감시, 콜센터, 고객센터 등 인터넷 관련 서비스 사업은 많은 인력이 필요하며, 반복되는 단순 업무로 이직률이 높아 어려움이 많다는 사실을 알고 있던 나는 조선족 동포 전 인구의 40%가량이 살고 있는 옌볜이 확실한 대안이라는 결론을 얻게 됐다.

 인터넷 사업에서 필수적인 저렴하고 안정적인 서비스 인력을 대량 확보할 수 있다는 것은 중요한 일이다. 한글을 모국어로 사용하는 고급 기술인력을 확보할 수 있다는 사실은 매력적이다.

 약 80만명의 조선족 동포가 살고 있고 30분이면 북한 국경에 도달할 수 있는 옌볜은 전문인력이 양성될 경우 남과 북을 연결하는 고리역할을 할 수 있을 것이며 중국의 내륙으로 진출할 수 있는 최상의 통로가 될 것이다. 현재 옌볜에는 많게는 80여명의 전문인력을 갖춘 회사부터 영세한 벤처기업까지 조선족 동포가 운영하는 50여개의 소프트웨어 개발업체가 있다.

 지난주 일본의 소프트웨어 개발 전문회사의 대표와 현지업체를 방문해 현장을 둘러본 결과 현지법인의 설립은 물론이고 인력을 양성해 일본에 공급할 수 있을 것이라는 긍정적인 답변을 들었다.

 옌볜과학기술대학에서는 또 다른 사업이 시도되고 있다. 40명씩 배출되는 정규 학사과정과 사회교육원의 IT교육이 진행되고 있으며 LG CNS에서 의뢰받아 과기대 IT교육원에서 4개월 과정의 단기 소프트웨어 개발자 교육과정도 운용하고 있다. 기업의 주문대로 단기간에 IT 전문인력을 양성, 기업체에 공급하는 이 프로그램은 비전공자까지도 포괄하는 전문가 양성 교육프로그램이라는 점에서 큰 관심을 끌고 있다. 몇몇 대기업이 벌써 다음 차례를 기다리고 있다.

 불가능할 것 같은 상황 속에서 가능성을 찾아내고 사업화에 성공하면 누구도 상상하고 기대하지 못했던 결과가 기다린다. 따라서 중국 중앙정부가 지역적 열세로 위험을 감수하고 한중 IT산업협력 중심지역으로 추진하고 있는 옌볜자치주와 연길시의 IT 기반구축 사업에 기대를 걸지 않을 수 없다.

 옌볜에 세워지는 IT 첨단빌딩은 임대료가 평당 1만원으로 5000여명의 인력이 숙식을 해결할 수 있다. 단순 인력의 경우 인건비가 월 12만원 정도다. 한국의 인터넷 관련 서비스 사업의 배후기지로 그리고 북한을 포함한 한중 소프트웨어 사업의 중심으로 부상해 남북 IT협력의 새로운 길을 열어나갈 수 있을 것이다.

출처: http://www.etnews.co.kr/news/detail.html?id=200704020088

영어 IDIOMS 학습자료 - 2

계속되는 재미나는 영어 IDIOM 공부 시간... ^^

가장 외우기 힘들었던 IDIOM들이였던거 같다...
하지만 후퇴나 타협은 없다...

1. The sky's the limit
前途无量

2. He has burnt his boats behind him
破釜沉舟

3. Beauty lies in the eyes of another
情人眼里出西施

4. He is kind to a fault
他非常好

5. A slow sparrow should make the early start
笨鸟先飞

6. Peace all year round
客套话

7. First impression are firmly entrenched
先入为主

8. Jack of all trades
万事通

9. Jack is as good as his mother
伙计不比老板差

10. Carry coals to Newcastle
多此一举

11. Practice is the sole criterion for testing the truth
实践是检验真理的唯一标准

12. They are talking turkey
谈正经事

13. The boy is love child
这男孩是私生子

14. On tip of tongue
话到舌尖

15. Strike while the iron is hot
趁热打铁

16. Ignite the sparks of understanding
迸发出心灵的火花

17. Lock stock and barrel
全部地, 一股脑儿

2009년 1월 9일 금요일

영어 IDIOMS 학습자료 - 1

재미나는 영어 IDIOM 공부 시간... ^^

HY님의 도움으로 모처럼 영어 IDIOM공부를 시작 하게 되었다.
처음이라서 그런지 10개 정도 이디엄을 외우는것도 그리 식은죽 먹기는 아니다.ㅜㅜ (나이 들어서 건망증이 심해지는 건가?! OTL...)

1. Out of sight and out of mind
眼不见心不烦

예문: The end is still unhappy. Out of sight, out of mind, I say.

2. Every cloud has a silver lining / Misfortune may be an actual blessing
黑暗中总有一线光明

3. Look before you leap
三思而后行

4. Bird of a feather flock together
物以类聚

5. You will reap that you sow
种瓜得瓜,种豆得豆

6. Many hands make light work
人多力量大

7. Don't teach your grandmother to suck eggs
班门弄斧

8. There's a skeleton in his cupboard somewhere
家丑不可外扬

9. If you sow the wind, you will reap the whirlwind
恶有恶报

10. You can’t have your cake and eat it too
鱼和熊掌不可兼得

11. Kill two birds with one stone
一举两得

12. It is no good crying over spilt milk
覆水难收

13. By hook or By crook
千方百计,不择手段,不惜一切代价

14. Half a loaf is better than none
总比没有好

15. Good wine needs no bush
酒好客自来

16. A stitch in time saves time
一针及时省九针/事半功倍

17. Procrastination is the thief of time
拖延就是浪费时间

18. Don't burn your candle at both ends
蜡烛不能两头点,精力不可过分耗

19. Still water run deep
不鸣则已,一鸣惊人

20. Don't be a dog in a manger
不要占着茅坑不拉屎