달력

5

« 2024/5 »

  • 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
2009. 2. 10. 21:06

백발이 성성한 개발자 Computing에 관한 독백2009. 2. 10. 21:06


책 사고 싶단 소리가 아닙니다.
이 책 쓴 분 연배가 어찌 될 듯 합니까?
오늘 이 책 표지 보고 참... 놀랬습니다.

정말 백발이 성성한 개발자가 있구나....
백발이 성성해서도 책까지 쓰는 정력적인 개발자가 있긴 있구나...
도데체 이들 나라는 어떻게 이런 게 가능할까...
왜 우린 이런 사람이 없을까...
이런 사람이 없는 우리 사회가 좋은 사회일까...

백발 성성한 개발자가 우리나라에도 꿈이 아니고 현실인 날이 얼른 왔으면 좋겠습니다.

쩝.
:
Posted by 하얀 말

이 글은 하얀말님의 2009년 2월 9일의 미투데이 내용입니다.

:
Posted by 하얀 말

이 글은 하얀말님의 2009년 2월 8일의 미투데이 내용입니다.

:
Posted by 하얀 말
  • IT를 제대로 쓸 줄 아는 오바마 vs. 'IT는 일자리 줄인다'면서, 진중권 교수 말마따나 '닥치고 나만 따르라'면서 머리엔 삽만 들은 2MB… 대한민국은 지금, 집단의 의중이 모인 선거의 결과가 삽질스러울 수 있다는 걸 정말 처절하게 열공 중인 것 같다.(오바마 IT 2MB 삽질)2009-02-06 11:20:03
  • CPU가 없는 nVidia가 ion이란 걸 준비하고 있었네요. 블루레이 영화 감상/게임 빼면 아톰과 별 차이 없다 할 수 있어도, 싼 값으로 일정 수준의 엔터테인먼트를 즐길 수 있을 테니 경쟁력은 있다 하겠습니다. 전력 소모량이 궁금하네요.(nVidia ion 뉴스)2009-02-06 19:57:11

이 글은 하얀말님의 2009년 2월 6일의 미투데이 내용입니다.

:
Posted by 하얀 말
2009. 2. 6. 09:07

Eclipse 한글화하기 Computing에 관한 독백2009. 2. 6. 09:07

Eclipse를 받으면 영어 메뉴와 영어로 된 대화 상자를 당연시 했는데 어느날 생각해 보니 예전엔 한글언어팩이란 것을 제공하던 것이 생각났습니다. 요새 버전인 Ganymede는 그런 거 안되나 싶었는데, 있더군요. Bable Language Pack이라는 것이 있고, 한국어도 지원합니다.

Babel Language Pack으로 한글화 하는 게 어렵지은 않지만, 까먹는 것을 대비해서 적어봅니다.

EclipseKorean-1.png

위 그림과 같이 Help -> Software Updates... 를 고릅니다.

 

EclipseKorean-2.png

기본적으로 한글화해주는 Update Site는 default로 안들어 있으므로 추가해야 합니다. 'Manage Sites...'를 누릅니다.

 

EclipseKorean-3.png

Babel Language Pack에 대한 update site를 고르고 'Add...'를 누릅니다.

 

EclipseKorean-4.png

Babel Language Pack이 지원하는 언어 목록이 나옵니다. 당연히 'Babel Language Packs in Korean' 선택.

 

EclipseKorean-5.png

한국어 pack에 들어있는 세부 module 정보를 보여줍니다. 옆의 check box를 선택/해제하여 각각에 대해 설치 여부를 결정 가능합니다. 'Finish'를 누르면 설치 시작합니다.

 

EclipseKorean-6.png

Eclipse plugin 설치가 끝나면 의례히 묻는 재기동 여부 묻는 대화상자입니다. 전 개인적으로 'Yes'를 눌러 처음부터 깨끗하게 시작하는 것을 좋아합니다.

 

EclipseKorean-7.png

재기동시킨 모습입니다. 각종 menu 등이 한글화된 것을 알 수 있습니다.

 

 

이 글은 스프링노트에서 작성되었습니다.

:
Posted by 하얀 말

이 글은 하얀말님의 2009년 2월 3일의 미투데이 내용입니다.

:
Posted by 하얀 말
2009. 2. 2. 13:14

무서운 일본 Computing에 관한 독백2009. 2. 2. 13:14

가깝고도 먼, 끈덕진 일본

그 나라로부터 원자재, 부품, 생산 장비 사서 우리 팔 것 만들기 때문에 멀어지면 안 되는 나라, 하다못해 미국 눈치를 봐서라도 친하게 지내야하는 나라이지만, 과거의 어두운 과거를 모른 척 하거나 '너희들을 착취하던 옛날이 그립다', '우리 아니었음 너희는 아직도 농경시대다'라는 말을 찍찍해서 사람 열 받게 하는 나라입니다(그런데 그 말을 똑같이 하는 우리나라 애들은 뭥미?). 더 멀리는 임나일본부설이란 Fantasy를 역사라고 해서 사람 웃기기도 하고. 즉, 가까워져야 하는데 영 가까와지긴 싫다는 말이 진부할 정도인 나라죠.

그런데, 그런데 말이죠... 일본이 꼴깝을 떨어 꼴보기 싫고, 소니 같은 회사가 삼성/LG에게 DRAM, 휴대폰, TV 등 일부 전자 품목이 쳐발리고 있긴 하지만, 딴나라클랜 소속 어떤 오크녀가 일본은 없다는, 언론인 출신 아니랄까봐 돈 벌라고 아주 선정적인 배틀크라이를 내지를 정도로(그나마도 베겼네 안 베꼈네 법정 다툼까지 한 모양) 띄엄띄엄 봐도 되는 나라가 일본일까요? 아무리 대한민국이 일본을 무시하는 전 세계 유일한 나라라지만, 아닌 건 아닙니다(아무 보기 싫다고 해도 현실은 직시해야죠). 일본은 세계 경제의 수퍼 파워이자, 경제 시스템 붕괴를 각오하지 않는 한 우리도 일본 없으면 살 수 없고, 거기다 일본은 더뎌도 오랫동안 꾸준히 밀어붙여 결국 이루어는데 탁월한 나라입니다. 더구나 이런 장시간 꾸준히 밀어붙이는 능력은 우리나라는 아주~ 소질이 없죠.

2008 노벨 물리학상

그러한 꾸준히 밀어붙여 덕 본 아주 선명한 성공 사례는 바로 2008년 노벨 물리학상입니다. 고바야시 마코토, 마스카와 토시히테가 '자연 상에 적어도 세 개 이상의 quark 족(族: Family)이 존재함을 예언하는 대칭성 붕괴의 기원을 발견'한 공로로, 요이치로 난부라는 일본계 미국 학자가 '아원자 물리에서 동시 대칭성 붕괴의 mechanism을 발견'한 공로로 2008년 물리학상을 받았습니다. 마코토 고바야시, 토시히데 마스카와는 아예 일본 국적이고, 난부는 미국 국적이긴 하나 일본에서 석,박사 하고 조교수도 했습니다. 이쯤되면 일본 물리학계의 쾌거라고 할 만 합니다.

유가와 히데키가 1949년 노벨 물리학상을 수상한 적은 있습니다만, 무려 60여년 남짓이 지난 지금, 일본 물리학은 어떻게 이런 괴력을 발휘할 수 있을까요? 제가 자주 가는 물리학자 분이 운영하는 블로그에서 (당연하지만) 2008년 노벨 물리학상 수상자에 대한 포스팅을 본 적 있는데 그 글에 다음과 같은 부분이 있습니다.

그나저나 이론가가 아이디어를 제안하고 정부의 전폭적인 지지하에 실험 물리학자들이 KEK를 만들고 오랜 기간 실험을 통해 그 물리학을 증명하여 '느리지만 확실하게 노벨상을 받는 길'을 밟는 일본의 저력이 두렵도록 부럽습니다.

답이 나오지 않았습니까? 올해가 소의 해라 많이 나오는 말인, 그야말로 우답천리(牛踏千里)라 아니할 수 없습니다.

그 블로그 포스팅에는 연이어 다음과 같은 글귀가 나옵니다.

5년 내에 노벨과학상 수상자를 배출한다는 어이없는 헛소리를 들으며 이땅에서 묵묵히 기초과학을 연구하시는 모든 연구자들이 이번 소식에 기쁨과 동시에 씁쓸한 기분을 느끼시지는 않으실지 걱정도 되구요.

우리나라는 이렇습니다. 이제는 말하기도 지겨운, 실제보다 보여지는 것이 중요시하고, 순식간에 몽둥이 뜸질하듯 해치우겠다는 조급증이죠. 실질적인 물리학 발전에의 기여보다 노벨상 수상이란 보여지는 것을 목표 삼고, 그걸 5년 안에 하겠다니... 물리학이란 과학 분야에서 하는 Fantasy니 이것도 Scientific Fantasy, 즉 SF라고 해야 할까요? 나 참.

Supre Creator, 그리고 4D

그리고 오늘, 저는 류한석님이 ZDNet Korea에 기고한 '한국의 천재 프로그래머는 어디에 있을까'란 글을 보고 일본 애들이 무섭다는 생각을 다시 한 번 하게 되었습니다(류한석씨께서 소프트뱅크의 손정의씨를 상사로 모시고 사는 분이라 일본 IT 소식을 잘 접할 수 있나 봅니다). 네, 이 글을 읽으니 위 물리학자 분의 해당 글이 생각났습니다. 그리고 제가 밥 먹고 사는 IT 바닥 이야기라 더 겁나고 실감났고 공감했습니다.

일단 일본의 IPA가 하는 일련의 활동 중 제일 놀라운 것은 천재적인 '개인'을 발굴한다는 것이었습니다. 산업의 형태를 띄고 있는 중 가장 비정형적이고 개인의 생산성이 극적으로 다를 수 있는 Software 개발의 특성을 꿰뚫은 것이죠. 그간 우리나라의 IT 진흥책이란 것이 S/W보다는 초고속 인터넷, 반도체, 휴대폰 같은 H/W성 IT에 집중되었고, 똑똑한 개인의 발굴보다 각종 회사나 대학교 연구실이 나누어먹는 형태로 진행되어 왔다는 것을 보면 이건 정말 놀랄 노자입니다. 거기에다, 우리나라 IT 진흥책을 벗어나 다른 분야까지 보더라도 그나마 있는 개인 지원 제도인 국비 유학생을 보면, 역시 증/학위/성적 좋아하는 공무원 하는 일답게, 국사를 포함한 시험 및 TOEFL 같은 영어 자격 시험 성적으로 선발하고 있는데 비해, IPA의 인원 선발은 정말 실용적이고 실제적이기까지 하여 (어찌보면 당연한 것인데) 또한 파격적으로 느껴집니다.

다른 놀라운 점은 일은 2000년부터 한 일이라는 것. 2000년부터면 벌써 8년이군요. 일본 애들에게는 10년 이상 밀어붙이는 것이 일상적일지 몰라도 우리는 8년은 고사하고...

"선정된 인재는 PM의 조언과 가이드에 따라 개발 프로젝트에 집중하며, 개발 이외의 문서 작업 및 계약 등은 프로젝트 관리 그룹에서 지원한다"는 점도 놀랍습니다. 개발은 소시적에나 하고 짬밥 차면 관리를 하는 것을 당연시하는 한국 문화에서(즉 관리가 더 윗길 간다는 사고 방식을 가진 한국에서), 관리 업무는 하지 말고 원래 일에 집중하라는 말은 거칠게 말하면 '관리는 잡일'이란 뜻이겠지요(현재 반 관리, 반 개발 일을 하지만, 개인적으로 관리는 가벼운 백신 같아야 한다고 생각합니다. 바이러스 검사한다고 리소스 다 잡아먹으면 그것은 백신이 아니라 쓰레기입니다. 관리는 실제 일의 진척을 돕기 위해 지뢰 치워주고 똥 치워 주고 실제 일하는 사람을 각종 이벤트로 즐겁게 해 주는 일이라 생각하기 때문에 이런 식의 사고 방식이 맞다고 봅니다). 뭐, 이 정도면 연예 기획사에서 연예인한테 매니저 붙여주는 거 같네요~. 완존 부럽.

어찌 되었든, 류한석님의 글은 이런 '사람을 키우는 진흥책'이 필요하다는 주장을 하고 있습니다.

그럼 우리나라는 비슷한 제도가 가능할까요? 공무원 특성을 보면 부정적입니다. 그들이 왜 증/학위/성적을 좋아하는지 아십니까? 첫째는 그들이 그런 분야를 잘 모른다는 겁니다. 그 분야를 잘 모르니 그 분야에 맞는 인재를 가릴 능력이 없습니다. 말에 대해 일자무식인데 천리마를 기가 막히게 알아본다는 백락(伯樂)이 될 수 있겠습니까? 둘째는, 공정한 선발처럼 보이는 것이 매우 중요하기 때문에 눈에 보이는, 명확한 뽑은 이유 삼을 거리가 있어야 한다는 것입니다. 사람 보는 눈도 없지, 공정하게 보여야 한다면? 네, 명성, 혹은 증, 학위, 성적 같은 것에 의존하는 선발 을 할 수 밖에 없습니다(허긴 이런 거라도 깨끗하게 잘 한다면야 최소한 '돈 먹었네 어쨌네' 하는 소리라도 안나오지.... 그럼에도 복마전 소리 들으니...). 그런데 알도 살도 못하는 개인을 지원한다? 공무원 마인드에서는 그런 말 = 도박입니다. 괜시리 그랬다 문제 되면 옷 벗고 공무원연금도 못 받게요?

설사 제도가 잘 갖추어졌고, 똘똘한 사람도 뽑았다고 가정해도 문제는 또 있습니다. 일본은 그래도 Software로 돈을 벌 수 있는 시장이란 것이 존재합니다만, 우리나라? 전 세계 Software 시장에서 1%를 차지하는 것이 한국 Software 시장이고, 그나가 그 시장도, 불법 복제는 말하면 입만 아프고, 정부고 민간 기업이고 외국 업체한텐 찍 소리도 못하고 달라는대로 다 주면서 우리나라 업체는 '싸야 되는 거 아냐?'라는 말이나 하고, 대기업 SI업체는 무늬만 Software 기업이지 하청에 협력사 쥐어짜기 이외엔 할 줄 모르고, 정부는 얼마나 한심한지 일례를 들자면 행자부가 나서서 정부 각 부처에 그룹웨어 보급한답시고 날뛰는 판입니다(그룹웨어 제작사는 뭐 먹고 사냐? 행자부랑 경쟁 입찰이라도 해야 하나?). 그래서 일선 개발자들은 3D에 꿈도 없는(Dreamless) 4D(시장이 코딱지만한데 무슨 Software 대박 신화? 대박 신화가 Fantasy니 당삼 꿈이 없을 수 밖에요)라고 하는 판이 소위 IT 강국 대한민국의 Software 판입니다(조선일보도 걱정스러워(?) 한다니까요? ㅋㅋ). 일본 정부처럼 꾸준히 제대로 된 정책을 추진하기는 고사하고, 걍 가만히 있어주는 게 도움되는 정부입니다.

똘똘한데다가 질긴, 그래서 무서운 일본

저는 일본의 Super Creator라는 말 자체부터 벌써 예사롭지 않게 느껴집니다. S/W 개발이 매우 System적이면서도, 기실 디자이너와 같은 Creative한 작업임을 이해해야 나올 수 있는 명칭이거든요. 이 제도는 성공할 것입니다. 왜냐하면 제도가 지원하려는 분야의 특성을 이해한 상태에서 만들어진 제도로 보이고, 일본 정부는 이 사업을, 성공했다고 할만한 지금까지도 쉼없이 밀어붙이고 있는 일본의 물리학처럼, 성공할 때까지 밀어붙일 것이기 때문이죠.

이어령 교수의 유명 저서로 '축소 지향의 일본인'이란 책이 있습니다만, 그런데 제 생각에, 일본은 꾸준히 노력하여 이미 거대하기로는 우주를 논하는 물리학에서도 두각을 내는 상태이다 보니 과연 오늘의 일본에게 맞나 싶습니다. 오히려 보여지는 것을 중시하고 몽둥이 뜸질하듯 빨리 해치우려다 보니 큰 일 못하는(보여지는 게 중요하고 시간 없는데 어찌 기초를 튼튼히 하겠습니까? 그리고 기초가 부실한데 어찌 큰 일을 할 수 있겠습니까? 하다못해 당구도 어느 시점부터는 당구의 생기초인 큐걸이가 문제가 됩니다) 한국이야말로 이렇게 가다간 축소 지향의 한국인이 되는 것 아닐까 위기 의식이 듭니다. 이게 다 그동안 우리나라가 Me Too 전략으로 성공했기 때문일 터인데, 이제 Me Too 전략 고집했다간 중국에게 캐발릴 뿐입니다. 즉 이제는 Creative가 필요한데, Creative는 빨리 하라고 다그친다고 나오는 게 아니죠. 오히려 더 안나올걸요?

올림픽 야구에서 일본 두 번이나 깼다고 좋아할 때, 일본은 어쩌면 정작 중요한 분야에서 우리를 발라버리는 준비를 착착 하고 있는 것인지도 모르겠습니다. 그래서 전 일본이 무섭습니다.

(사족)

제가 인용한 물리학자 분의 '중국으로 가서 재능있는 천재 틴에이져를 채용하라'는 글도 읽어보실 것을 추천합니다.
:
Posted by 하얀 말
2009. 1. 23. 00:23

Spring JDBC 삽질기 - 1 Computing에 관한 독백2009. 1. 23. 00:23

아아, 이 화면을 보기 위해 얼마나 삽질을 했던가....


그렇습니다, 바로 JUnit Test Case 수행하여 모든 JUnit Test를 통과한 것입니다. 덜렁 Class 한 개에 method 7개에 대한 test지만 이거 한다고 정말 갖은 삽질을.... 저번 주말부터 시작했는데 과문한 터라 오늘사 이 Test를 모두 통과했습니다. 흐~.

삽질의 시작

석사도 넘쳐나는 요사이에 비록 학부로 끝났지만 그래도 컴퓨터 과학을 전공하고 졸업 후 취직해서 Java 전문가 행세 및 Java EE 기반 Web System  구축 관련 S/W Architect라고 구라도 좀 치고, IBM MQ로 EAI도 하고 지금은 급기야 AnyLink 5라는 Solution으로 금융권 외부 기관 연계 일을 하며 별별 System(Mainframe은 물론 Tandem이란 것도 구경해 봄), 별별 Network(X.25라는 거 아세요?), 별별 인간들과 부딪히며 살아온 온 지도 어언 만 9년 지나 10년째로 접어들었습니다. 여하튼 별 걸 다 봤고, Python이나 Ruby 같은 떠오르는 태양도 탐내 하지만 아무래도 Java를 제일 편해 하고 회사 업무도 맨 Java 판이다 보니, 아무래도 Java쪽 기술이 눈에 잘 들어옵니다.

그간 Java 바닥의 super star인 Spring Framework(이하 Spring)란 탐스러운 S/W Framework에 대한 경험을 갈구하던 나머지, '스프링 프레임워크 워크북'이란 책도 사 보고, 내성적인 성격임에도 불구하고 이차저차 KSUG(Korea Spring User Group)에서 Spring Reference 3장도 번역하고 그랬지만(아직 손 많이 봐야하지만), 업무에서는 Spring 쓸 일이 전혀 없고 앞으로도 쓸 것 같지도 않아, 이래서는 실제로 아는 것 하나도 없고 탐스러워 하기만 하다 끝나겠다 싶어, Spring을 써서 간단한 Web Site라도 하나 만들어 보자고 뽐뿌 받아 시작하게 되었습니다(Sacred라는 game을 다 깨고, 이제 나이도 한국식으로는 36살인데 game 고만 하고 여가 시간에 생산적 일을 좀 하자는 취지도 있었습니다... 그런데.... 해야 할 game이 지금도 잔뜩 밀린 것도 사실이라 설치할까 말까 이러고 있습니다 ^---------------^).

Apache Derby = Sun JavaDB

Web site를 만들더래도 DB나 file system의 사용은 거의 필수입니다. DB를 쓰려면 생짜 JDBC로만 할 수도 있을 것이고, Apache Commons DbUtils를 써도 되고, 거창하게 iBatisHibernate, JPA를 쓸 수도 있을 겁니다(생짜 JDBC 빼고는 다 깨작거린 정도지 실 업무에서 쓴 건 하나도 없군요). File을 쓰는 것은 걍 생짜로 java.io package의 class 쓰는 거 이상은 생각이 안나네요. SQL만 던지면 결과 얻는 DB에 비해서도 엄청 불편하고요.

'File System의 간편함과 DB의 편리함을 동시에 누릴 수는 없을까?'하는 찰나 퍼뜩 생각난 것이 'Simple한 JavaDB'라는 글입니다. Java SE 6 SDK 깔면서 같이 깔려 하는 바로 그 놈이죠. 우리가 일반적으로 쓰는 DB 형태인 DB Server 형태 동작도 가능하고, Java Application의 일부로 작동도 가능한(Embedded DB라고 합니다) 가벼운 DB입니다. '이게 딱이네' 싶어 이걸 쓰기로 했습니다. Sun에서 JDK의 일부로 배포하긴 하지만 Java DB의 원조는 Apache Derby입니다(사실 둘 다 똑같습니다). 걍 Apache에서 내려받았습니다.

IBM이 Cloudscape란 경량 DBMS를 Apache에 기증하면서 생긴 DB다 보니 이거 참 DB2와 비슷한 구석이 많더군요. 이 DB에 관해서는 별도로 글을 올리겠습니다. 아무래도 익숙치 않은 DB다 보니 삽질 좀 했거든요.

SimpleJdbcTemplate?

Internet 검색을 해 보니 맨 처음 걸린 것이 'SimpleJdbcTemplate'라는 글이었습니다. 살펴보니 JdbcTemplate 구현체가 몇 개 되더군요. 그런데 이 글에서 'Java 5의 새로운 기능들을 추가한 JdbcTemplate의 wrapper 클래스이다. varargs나 autoboxing등을 활용하여 기존의 방식들에 비해서 cast하는 일들이 줄어들게 된다'는 문구를 보고, JDK 6으로 진행중이겠다, '그래, 이 놈이야!'하고 일단 SimpleJdbcTemplate로 하기로 합니다(참 단순하죠? 최신 기술이라고 무턱대도 도입하려는 고객 욕할 수 없다니까요 ㅋㅋㅋ). 그럼 이제부터SimpleJdbcTemplate를 보겠습니다.

SimpleJdbcTemplate 객체 생성부터 난관

일단 SimpleJdbcTemplate 객체를 생성해야 하겠지요? SimpleJdbcTemplate Javadoc을 보면 생성자(constructor)가 세 개 있는데 두 개는 다른 Spring JDBC 객체를 감싸는 역할이고 실제로 DB에 붙이는 것은 DataSource를 인자로 받는 생성자입니다.

DriverManager.getConnection() method로 Connection 객체를 얻거나 WAS 등에서 관리하는 Connection Pool을 가진 DataSource를 JNDI로 집어왔는데... 이거 초장부터 막힙니다. 이 Web application의 web.xml에 DataSource를 등록하고 JNDI로 lookup할까요? 나쁘진 않군요.

제가 선택한 방법은 그냥 JDBC Driver에 있는 DataSource 구현체를 이용하는 것이었습니다. 다행히 Derby는 Derby를 구성하는 class들에 대한 Javadoc을 제공하고 있어서 그걸 볼 수 있었습니다(옆 link를 눌러보시면 jdbc3, jdbc4라는 directory가 나오는데 이들은 뭘까요? Derby는 JDBC 4.0 명세도 준수하는데, 바로 jdbc4란 directory 안의 Javadoc들은 이 JDBC 4.0에 대응하는 Derby class들에 대한 Javadoc입니다. jdbc3은 설명 따로 안드려도 감 잡겠죠?). org.apache.derby.jdbc package에 있는 class 중 이름이 *DataSource, 또는 *DataSource40으로 끝나는 것들이 바로 Derby의 DataSource 구현체입니다. 이 중 하나를 골라 SimpleJdbcTemplate 생성자의 인자로 쓰면 됩니다.

그래서 일단은 모든 DAO의 부모 역할을 하는 추상 class를 하나 선언하고 그 class의 member 변수로 이 SimpleJdbcTemplate 객체를 하나 잡기로 했습니다.

...
public abstract class AbstractDao {
    private SimpleJdbcTemplate jdbcTemplate = null;
    ...
}

이 SimpleJdbcTemplate가 필요로 하는 DataSource는 따로 member 변수로는 안 잡았습니다. 필요하면 jdbcTemplate의 getDataSource()로 얻음 되니까요. 그럼 SimpleJdbcTemplate 객체 생성에 필요한 DataSource는 어떻게 얻을까요?

...
public abstract class AbstractDao {
    private SimpleJdbcTemplate jdbcTemplate = null;
    ...
    public final void setDataSource(DataSource ds) {
        this.jdbcTemplate = new SimpleJdbcTemplate(ds);
        ...
    }
}

네, 바로 setDataSource()에서 인자로 받는 DataSource를 가지고 바로 SimpleJdbcTemplate로 만들었습니다. 그럼 이 DataSource는 어떻게 만들지? 네... 바로 Spring의 XML 설정에서 이 부분을 정의하였습니다. 아래와 같이요.

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
   
    <!-- DataSource Setup for Derby Network DB -->
    <bean id="derbyNetworkDS"
        class="org.apache.derby.jdbc.ClientConnectionPoolDataSource40">
              <!-- DB IP나 hostname -->
        <property name="serverName" value="127.0.0.1" />
        <!-- DB port -->
        <property name="portNumber" value="1527" />
              <!-- DB 이름 -->
        <property name="databaseName" value="scientia"/>
        <!-- DB id -->
        <property name="user" value="scientia" />
              <!-- DB password -->
        <property name="password" value="scientia" />
        <property name="description" value="Apache Derby Network DataSource" />
        <property name="dataSourceName" value="derbyNetworkDS"/>
    </bean>
...
</beans>

Apache Derby에 있는 derby.jar나 derbyclient.jar를 보시면 실제로 org.apache.derby.jdbc.ClientConnectionPoolDataSource40이라는 class가 있습니다. 이 class가 바로 Derby에 대한 DataSource의 실 구현체이고, Javadoc 보시면 아시겠지만 DataSource 구현체는 이것 말고도 몇 개 더 있으니 입맛이나 요건에 맞게 용도별로 골라 쓰시면 됩니다. 어쨌든 이들 객체에 대한 property를 설정하면 DB에 접속하여 필요한 연산을 할 수 있습니다. 그 class에 대한 Javadoc 중 이름이 set*으로 시작하는 method들이 바로 이 XML의 property로 설정할 후보들이죠.

(다음에 계속)
:
Posted by 하얀 말
  • UI를 바꾸기 전까진 아무도 바뀐 줄을 모른다. 사용자는 UI가 변해야 기능이 개선되었다고 생각한다. 사용자가 못 찾는 기능은 없는 기능이다.(UI 기능 개선)2009-01-13 12:56:13
  • LTE냐 Wibro냐? LGT야 3G 투자가 없어서 걍 LTE로 간다지만, WCDMA에 돈 엄청 쓴 SKT, KTF 참 애매하겠다. 맘 같아선 LTE 하고 싶지만 정부는 Wibro 하라고 할 거거든. 특히 Wibro에 목숨 건 KT랑 합병할 KTF가 젤 거시기할 듯.(4G LTE MobileWiMAX Wibro LGT KT KTF SKT)2009-01-13 16:36:00
  • LG 그룹이 4G 관련 분위기는 좋다. LGT는 3G 안해서 4G 투자에 나설 수 있고, LG전자도 삼성전자와 달리 Wibro에 들인 돈이 없으니 손쉽게 글로벌 마켓쉐어가 더 클 LTE 투자 결정이 가능했을 듯. 단, Wibro에 목숨 건 정부가 변수.(4G LG LGT LG전자)2009-01-13 16:42:19
  • SKT는 3G 투자금을 회수해야 하므로 이른 4G 상용화는 안 반갑다. 단 LGT가 치고 나오면 하는 시늉이라도 할 거고, 그렇다면 내심 WCDMA 발전형인 LTE를 하고 싶어하겠지만 역시 Wibro에 목숨 건 정부가 변수.(4G SKT LTE)2009-01-13 16:45:30
  • KT 그룹이 문제. KTF는 SKT처럼 3G 투자금 회수를 하고 싶을 거고, 4G 한다면 역시 LTE 하고 싶겠지만 곧 합병할 KT가 그간 Wibro에 들인 돈이… 정부 이외에 KT 때문에도 LTE 못할 지도… 이 동넨 젤 좋은 게 4G 최대한 안하는 것일 듯.(4G KT Wibro KTF LTE)2009-01-13 16:47:29
  • 삼성전자? 정부? 곧 죽어도 Wibro! 3G 때 동기식 3G 사업자 하나라도 만들겠다고 난리치던 정통부의 생쑈(LGT가 동기식 사업권 땄다 남용 사장 사표 내고 화끈하게 포기한 통에 우리나라에 동기식 3G 사업자 없다)를 4G에서도 다시 볼 지도 모른다.(삼성전자 정부 4G Wibro)2009-01-13 16:49:53

이 글은 하얀말님의 2009년 1월 13일의 미투데이 내용입니다.

:
Posted by 하얀 말

이 글은 하얀말님의 2009년 1월 12일에서 2009년 1월 13일까지의 미투데이 내용입니다.

:
Posted by 하얀 말