전체 글 400

[dW] REST 서비스 작성하기

REST 서비스 작성하기 이 글은 REST(Representation State Transfer)와 Atom Publishing Protocol(APP)에 관한 개념이 잘 나와있습니다. 그리고 REST/APP 기반의 서비스 구현 방법도 예로 나와있지요~ 본문 내용중에, REST 원칙은 URI(Uniform Resource Identifiers)를 사용하여 주어진 자원 표현의 위치를 알아내고 접근한다. 표현 상태(representational state)라 알려진 자원 표현은 만들어질 수도, 찾아올 수도, 수정될 수도, 삭제될 수도 있다. 예를 들어 REST를 적용하여 문서를 발행해 독자들이 이 문서를 읽을 수 있게 할 수 있다. 언제든 문서를 발행할 때는 웹 URL을 보여줘야 한다. 그래야 독자들이 그 ..

[dW] Diagnosing Java code: Java generics without the pain, Part 1

JavaOne 2008 Wrap-up 세미나 발표자료에 올라온 "More Effective Java" 주제로 양수열님이 2nd Edition으로 출간된 Effective Java의 저자직강으로 JavaOne에서 열렸던 내용을 소개하는 부분으로 Java 5.0에 추가된 Generics, Enum types, Lazy initialization 관련 부분이 나와서 찾아보던 중 Generics에 관한 글로 2003년 글로 dW에 있군요. Part 1, Introduction to generic types and support features (February 2003) Part 2, Extension limitations and implementation strategies (March 2003)Part 3,..

[dW] Practically Groovy: Reduce code noise with Groovy

요즘 Groovy에 대해 조금 공부하고 있는데 dW에 찾아보니 Groovy에 특성이 나타나 있는 글을 발견했는데 자바에서의 noise와 복잡성을 Groovy를 사용해서 제거하는 방법이 주로 나타나있습니다. 자바에서 JavaBean을 썼을때와 Groovy에서 Bean을 생성했을때의 코드차이. Groovy에서도 Junit을 이용해 테스트 코드를 작성하는 법, polymorphism, Spring framework를 사용하는 방법들이 소개되어 있습니다. Groovy에 대해 직접적인 언급보다는 기존 자바코드와 비교해서 또는 자바와 함께 쓸때의 장점등이 나타나있군요. 이래서 Groovy를 쓰면 편하겠다~ 라는 글.. ^^ Practically Groovy: Reduce code noise with Groovy

[dW] Ajax에서 XML 처리하기

Ajax에서 XML처리하는 일이 많은데 저는 DOM트리를 탐색해서 필요한 정보를 추출하여 HTML로 변환을 하여 DIV 태그에 넣는 방법을 주로 사용하는데 이렇게 하다보면 필요한 정보의 태그를 찾아가는 과정이 복잡합니다. Element안에 Element안에 Element가 있을경우..그외에 더 복잡한 경우도 많겠지요. XSLT를 사용해 XML을 HTML로 변환하는 방법(서버쪽에서 XML을 HTML로 변환할지, 클라이언트쪽에서 변환할지..) 그리고 JSON과 동적 스크립트 태그를 이용해 XML처리하는 방법이 있군요. XML processing in Ajax, Part 1: Four approaches XML processing in Ajax, Part 2: Two Ajax and XSLT approache..

[dW] Learn 10 good XML usage habits

"XML을 사용할때 좋은 10가지 습관(관습)"이라는 글을 우연히 보았는데 당연한 것도 있고,알지만 안쓰게 되는 점들도 있군요. Learn 10 good XML usage habits Define your XML and encoding Use a DTD or XSD Remember to validate Validation isn't always the answer XML structure versus attributes Use XPath to find information You don't always need a parser to extract information When to use SAX over DOM parsing When to DOM over SAX parsing Use a good XML ..

[dW] XStream으로 자바 객체를 XML로 직렬화하기

자바객체를 직렬화하려면 흔히 어떻게 하는 방법이 있을까요? 오픈 소스 라이브러리를 써주는 센스!를 발휘하려면 어떤 라이브러리가 있는지 알아야겠지요. 전 dW에 번역글이 올라와서 알게 된 XStream이 있는데 정말 몇줄로 자바객체를 XML로 직렬화 시켜주는 군요. [dW] XStream으로 자바 객체를 XML로 직렬화하기 이곳을 참조하면, 이클립스 프로젝트에서 클래스를 생성해서 단 몇줄로 자바객체를 XML로 직렬화하는 방법이 나와있습니다. 친절하게 이클립스의 스크린샷까지.. XStream 사이트에 가보면 제일 첫 화면에 보이는 "XStream" is a simple library to serialize objects to XML and back again. 정말 심플한 라이브러리일까? 한번 소스를 봐보면..

[책] 서른 살이 심리학에게 묻다

어느날 문득 인터넷서점을 둘러보던 중 제목만 보고 눈에 띄는 책 한권. 그러나 심리학 책은 언뜻 손에 잡히지 않는 탓에 패스~ 했는데 어느날 회사분 중 한분이 보고 있는 걸 발견하고는 냉큼! 빌려서 읽게 된 "서른 살이 심리학에게 묻다" 제목만 듣고서 흥미가 끌렸던 건 이제 몇년 후의 모습. 내가 그동안 그렸던 모습의 서른 살의 모습이 정말 될 수 있을 것일까? 과연 지금과는 어떻게 다른 모습일까? 하는 궁금함이 가득차 혹시나 뭔가 있지 않을까? 란 생각과 혹시나 여기 써져 있는 내용을 많은 부분 공감하면 어쩌지(?) 하는 불안감(?) 속에 책을 펼쳐 들었다. 책속으로 들어가 보면, 혼자 풀기 어려운 문제에 봉착하면 우선 잠시 멈추어 당신 안의 목소리에 귀를 기울여라. 그런 다음 신뢰할 수 있고 존경할 ..

서울에서의 봄 나들이

이제 슬슬 봄이 지나가고 여름이 다가오고 있군요. 오늘은 정말 급! Feel이 받아서 그동안 찍기만 하고 꺼내볼 여유조차 없었던 사진을 한번 꺼내봤다가 이렇게 블로깅까지 하게 되었습니다. (정말 제 블로그의 주제는 여기저기 왔다갔다 하지요. 완전 제 성격만큼이나 제 멋대로인 블로그이지요.) 올해 봄에 사진을 보니 그동안 여기저기 많이 다녔군요.(공부는 언제하고.ㅠㅠ) 그중 서울에서는 남산한옥마을, 남산, 올림픽공원, 부암동, 경복궁, 삼청동, 하이서울페스티벌 연등축제등등이군요. 이중에는 정말 여러본 가본 곳도 있고 처음 가본 곳도 있었는데 사진을 보면 볼 수록 여러번 가본 곳도 계절마다의 분위기가 다르다는 것을 절실히 느낍니다. 그만큼의 매력이 풍부하고.. 볼 곳도 많아서 느낄곳도 많은... 너도 나도 ..

여행 이야기 2008.05.06 (11)

"버리" 님의 가치는 419억8773만7594원 입니다.

재미삼아 오랫만에 가치평가를 해보았는데 저의 가치는 약 420억이군요. 그중 "마음"이 으뜸!이군요. 하지만 그다지 좋아할 만한 결과는 아닌것 같습니다. ㅠㅠ 그냥 재미삼아...란 마음으로 해보시려면 -> http://www.enjoycell.com/ "버리" 님의 가치는 419억8773만7594원 입니다. 마음 161억7330만608원 재능 12억2345만6781원 인덕 135억8433만1797원 환경 75억5973만4846원 운 34억4691만3562원 합계 419억8773만7594원 마음의 S 등급 버리씨는 천사와 같은 마음을 가지셨군요. 마음에 관한 당신의 매력은 많은 사람들에게 행복과 기쁨을 줍니다.당신을 따르는 사람과 동경하는 사람들이 많습니다. 재능 D 등급 슬프게도 재능은 제로에 가깝습니다..

잡동재미꺼리 2008.05.02 (4)

[dW] 동적인 언어를 동적으로 호출하기, Part 1: 자바 스크립팅 API (한글)

Java SE 6에 추가된 패키지중에 자바 코드에서 스크립팅 언어를 런타임 시에 호출하도록 도와주는 javax.script 패키지가 있다. 그렇구나! 동적인 언어를 동적으로 호출하기, Part 1: 자바 스크립팅 API (한글) 이 문서에서 코드를 다운로드 받아서 실행해보면 쉽게 이해가 된다. 내부는 잘은..모르겠지만, 이 패키지는 다른 스크립트 언어로 작성된 것을 공통 API를 사용하여 호출될 수 있도록 하는 class와 interface를 제공하기에 인터페이스를 통해 JVM안에서 스크립팅 코드를 작성할 수 있고 실행할 수 있다. 스크립팅 패키지를 사용할 수 있는 경우는 완벽한 규칙 엔진에 의존하지 않고, 자바 언어보다 단순한 언어로 비즈니스 규칙을 작성한다. 플러그인 아키텍처를 생성하여 사용자들이 즉..

카테고리 없음 2008.04.30 (2)

[dW] HTML 5와 XHTML 2에 관련된 글(dW문서와 그외)

8년동안 꽁꽁 얼어있던 HTML이 브라우저 시장에서 Apple, Opera, Mozilla 재단이 결성한 WhatWG와 W3C 두 대열에 움직임이 계속 일어나고 있지요. 그에 관련된 글들을 간단하게 모아봤습니다. HTML 5에 추가된 새로운 요소 (한글) 구조 요소: aside, figure, section 인라인 요소: time, meter, progress 내장 요소: video, audio 대화형 요소: details, datagrid, command XHTML 2 사용하기 (한글) XForms 지원 추가 XML Events 포함 더욱 풍부한 재사용 가능한 구조 장치 독립성, 접근성, 문법 메타데이터 추가 용이성 HTML의 미래, Part 1: WHATWG WhatWG의 FAQ의 내용중 HTML 5..

[dW] Ajax 오버홀(overhaul), Part 1: Ajax와 jQuery로 기존 사이트 개선하기 (한글)

Ajax overhaul, Part 1: Retrofit existing sites with Ajax and jQuery - Ajax 오버홀(overhaul), Part 1: Ajax와 jQuery로 기존 사이트 개선하기 (한글) 모달 대화상자를 통해 사용자 경험을 향상시키고 네비게이션을 단순화하기 http://www.ibm.com/developerworks/kr/library/wa-aj-overhaul1/index.html?ca=drs-kr 몇일전 dW에 올라온 Ajax와 jQuery를 이용해서 웹 1.0의 사이트를 웹 2.0의 사이트로 변신(!)하는 번역글이 떴습니다. javascript library로 dojo밖에 해보지 않아(그것도 아주 얕게..) jQuery는 잘 모르지만, GreyBox, Th..

[책] 자바 성능을 결정짓는 코딩 습관과 튜닝 이야기

자바 성능을 결정짓는 코딩 습관과 튜닝 이야기 - 이상민 지음/한빛미디어 이번으로 세번째 Blog2Book 시리즈를 읽었습니다. 이번 책은 자바 초보 프로그래머인 저에게 유용한 정보가 많이 있었습니다. 이 책은 코드 짜긴 짜는데 우선은 급급한 처지에 있는(저같은..) 프로그래머에게 한숨 돌릴 수 있도록(?) 자신의 코드를 점검해 보라는 취지에서 읽기에 좋은 것 같습니다. 엄청!나게 새로운 지식이 있는건 아니지만 아차하고 그냥 넘어갈 수 있을 수 있는 부분이여서 저에겐 ~ +_+ 아직은 튜닝보다는 코딩습관을 어떻게 들여야 할까에 대해 더 관심이 있는 저로서는, 튜닝에 대한 툴소개가 많지않을까~ 생각되었는데 의외로 개발하면 서 자세히 모르고 마냥 코딩을 하다보면 얼마나 서버에게 미안한 일(?)이 많아질 지 ..

[dW] Acegi로 자바 애플리케이션 보안화 하기, Part 1: 아키텍처 개요와 보안 필터 (한글)

이 dW문서는 작년에 작성되었던데 얼마전 Spring과 관련하여 Acegi에 대해 살짝~ 공부해 봐서 마침 dW에 글이 있나 찾아보니 역시나 있군요~ 우리나라 말로하면 "아저씨"(지극히 저의 개인적인 생각)란 이름과 비슷한 아씨지(어떤분은 머 다른말로 표현하셨던데 어쩜 그게 더 비슷한거 같기도 하고) 아무튼! What is Acegi Security? Acegi Security is a powerful, flexible security solution for enterprise software, with a particular emphasis on applications that use Spring. Using Acegi Security provides your applications with compr..

[Spring] 스프링에서 VelocityTools 환경설정

스프링에서 벨로시티 뷰 템플릿 엔진을 사용하고 있는데 여기에 편리한 tools를 사용하기 위해서 필요한 설정을 기억하기 위해 기록합니다. VelocityTools는 벨로시티 템플릿에서 숫자나 날짜, url등의 포맷팅을 지원하는 툴이고, VelocityTools프로젝트에는 GenericTools, VelocityView, VelocityStruts 세개의 부분으로 나눠져 있습니다. 보통 GenericTools를 많이 쓸일이 많기 때문에~ 조금 정리해보면, Generic Tools에는, DateTool A tool for manipulating and formatting dates. MathTool A tool for performing floating point math. NumberTool A tool ..

backend/Spring 2008.03.20 (2)

hip-hop뮤지컬 "스노우 드롭"

우연히 좋은 기회가 있어서, 2008년 3월 2일 창작 뮤지컬인 스노우 드롭 1회 마지막 공연을 보고 왔습니다. (4월 중순부터 2회 공연이 시작된다고 합니다) 1회 마지막 공연이라 그런지 시작부터 분위기가 넘~ 좋았습니다. 시작부터 환호성이 ~ 와우~ 제목인 "스노우 드롭"은 "희망"이란 꽃말을 가지고 있는 꽃의 이름입니다. 인질 VS 강도 드디어 그들이 붙었다. 세상을 바꾸기 위한 몸부림! 은행강도와 인질이 벌이는 요절복통 인생이야기 절묘한 코미디와 무대를 꽉 채우는 춤과 노래의 향연! 한걸음더 우리에게 다가오는 희망의 빛 이제 하류인생들의 과외공부가 시작됐다.[출처] 스노우드롭 - 흰꽃 속에 핀 희망의 빛.. 그 전설이 시작된다. 내용을 보면 주제는 신선하지만 마무리는 약간~ 뻔한 교훈이 있지 않나..

[Spring] 스프링 MVC를 이용한 웹 요청 처리

스프링 MVC를 이용한 웹 요청 처리 구성요소 DispatcherServlet : 클라이언트의 요청을 전달받음. 컨트롤러에게 클라이언트의 요청을 전달하고 컨트롤러가 리턴한 결과 값을 view에 전달하여 알맞은 응답을 생성하도록 한다. HandlerMapping : 클라이언트의 요청 URL을 어떤 컨트롤러가 처리할 지를 결정 Controller : 클라이언트의 요청을 처리한 뒤, 그 결과를 DispatcherServlet에 알려줌. ModelAndView : 컨트롤러가 처리한 결과 정보 및 뷰 선택에 필요한 정보를 담는다. ViewResolver : 컨트롤러의 처리 결과를 생성할 뷰를 결정 View : 컨트롤러의 처리 결과 화면을 생성 캐릭터 인코딩 처리를 위한 필터 설정 요청 파라미터의 캐릭터 인코딩이 ..

backend/Spring 2008.03.13 (4)

반 고흐전

얼마전, 생애 첫 미술관에 다녀왔습니다. '빈센트 반 고흐'는 1853년 네덜란드 준데르트에서 캘빈교단의 목사 아들로 태어나 37세로 힘들게 생을 마감한 인상주의 대표적인 화가이다. 그에게는 영원한 정신적 물질적 지주가 있었는데 그가 바로 동생 테오였다. 테오는 '반 고흐'가 불멸의 화가로 후세에 알려지기까지 처음부터 끝까지 함께한 동반자였다. 형인 반 고흐의 생활비를 대며 그림을 계속하도록 독려 했지만 그는 동생에게 더 이상 짐이 되고 싶지 않다는 이유로 오베르의 밀밭에서 자살하고 만다. 동생 테오 역시 반 고흐 사망 후 6개월 만에 정신착란으로 숨을 거둔다. 반고흐는 37세를 일기로 생을 마감하지만 그 짧은 생애 중 10 년 간의 작품 활동을 통해 유화작품 880여 점을 포함한 900여 점의 작품을 ..

"몰입"- Think Hard : 소망하고 추구하는 것을 실현시키는 몰입적 사고

몰입 - 인생을 바꾸는 자기 혁명 - 황농문 지음/랜덤하우스코리아(랜덤하우스중앙) 요즘 베스트 셀러중의 하나인 "몰입" 책을 읽었습니다. 몰입(Flow) : 자신의 행동을 스스로 조절할 수 있으며 자신의 운명의 주인인 듯한 느낌이 드는 순간들 몰입. 어쩌면 늘 어떤일을 할 때 원하는 것이지만 뜻때로 되지 않을 때가 많은 것 같습니다. 얼마만큼 오랫동안 일하고 공부하느냐가 중요한 게 아니고, 어떻게 일하고 어떻게 생각하느냐에 따라 결과가 다르다는 걸 늘~ 깨닫습니다. 이 책에서도 그게 가장 큰 핵심이구요 저는 책을 읽다보면 나도는 극도의 몰입(?)을 경험한다는 것이 우리가 늘 생각해 오던 것과는 조금 다르게 다른 어떤 이상한 현상같은 느낌도 받았습니다. 어떤 일에 미치다! 라는 것이 역시 쉽지도 않고 어떤..

[책] 열씨미와 게을러의 리눅스 개발 노하우 탐험기

열씨미와 게을러의 리눅스 개발 노하우 탐험기 - 박재호 지음/한빛미디어 Blog2Book 시리즈 두번째 책을 읽게 되었는데, 윈도우 환경에서 개발을 주로 하고 리눅스를 접하는 경우가 드물어서 리눅스 개발은 어떻게 되나,, 했는데 단순하게 사용법 명령어를 이렇게 써라 식의 책과는 달리 내용을 전해 듣는 듯한 대화형식으로 배경과 원리를 설명해줘서 왜 이게 필요하게 되었나 이해할 수 있는 책인 것 같습니다. 리눅스를 많이 접해보시지 않은 상태에서 읽기에는 어려울 수 있을 것 같습니다(전 어려웠거든요^^) 잘 모르는 분들은 이런것이 있구나 하면서 읽기에 좋고 리눅스 개발을 어떻게 할지 궁금하다거나 개발을 해보신 분들이 노하우를 알고 싶다면 재미있는 책인듯 합니다. "Blog2Book 시리즈"는 블로그 형식으로 ..

당신에게 뻔한 것, 따라하기, 지루한 것은 죄악입니다.

"Ho Eyo He Hum~" 님의 블로그를 보구 저번에 한번 재미삼아 해봤는데, 이번에 두번해도 똑같이 나올까? 해서 다시 한번 해봤는데 저번이랑 정말 똑같이 나오는 군요. 저번에 한거랑 나오는 내용도 조금 달랐는데(랜덤인것 같아요. 수는 많지 않은 것 같지만) 어느 정도 공감가는 부분도 있는 것 같아 재미삼아 블로깅해 봅니다. 구냥 웹진도 가끔 해보는데 IDsolution이라는 이곳에서 제작하고 있는거군요~ 톡톡튀는 참신한 키치 예술 취향 당신에게 뻔한 것, 따라하기, 지루한 것은 죄악입니다. 당신은 새로운 것을 찾고 독특함을 개발하고 싶어합니다. (항상 그런건 아니겠지만) 다들 따라하는 패션, 누구나 흥얼거리는 노래, 너도나도 사보는 베스트셀러, 아줌마들이 떠들어 대는 연속극, 모두 신물 나는 것들..

잡동재미꺼리 2008.03.08 (2)

hello! blogger 대한민국 블로거 컨퍼런스 참가신청

다가오는 3월 16일 일요일에 블로거 컨퍼런스에 다녀오고 싶어서 참가신청을 해놓은 상태인데, 어찌 당첨이 되려나 모르겠습니다. 컨퍼런스는 IT위주의 내용에 주로 가봐서 이번엔 다양한 주제의 블로거들의 이야기를 들을 수 있으면 좋겠습니다. 이미 1차 추첨결과가 2월 29일에 있었고 2차 추첨결과는 3월 7일에 한다고 합니다. 두둥~ 좌석수에 제한이 있는 관계로 2400명의 블로거만 추첨을 통해 선발한다고 합니다. 재미있을 것 같은데, 어찌 잘 되려나 모르겠습니다. 제 블로그에 오시는 분들도 함께 참여해요~ ^_^

[dW] 클래스 로딩 문제 분석하기

클래스 로딩 문제 분석하기에 좋은 글이 있어서 올립니다 원문이 나온지는 좀 되었지만, 한번 읽어보기에 좋은 것 같습니다. 아래 내용은 저혼자 공부하면서 내용을 잠깐 정리해 본 것입니다. Part 4로 이루어져 있기에 정리한 내용보다 더 방대한 내용이 담겨져 있습니다. ^^ 클래스 로딩 문제 분석하기, Part 1: 클래스 로딩과 디버깅 툴 소개 (한글) 클래스 로딩 문제 분석하기, Part 2: 기본적인 클래스 로딩 예외(Exception) (한글) 클래스 로딩 문제 분석하기, Part 3: 특이한 클래스 로딩 문제 해결 (한글) 클래스 로딩 문제 분석하기, Part 4: 교착 상태와 제약 조건 (한글) 원문 시리즈 http://www.ibm.com/developerworks/views/java/libr..

[Java] 자바 코딩하다가 실수하는 부분들

알고보면 당연한 내용인데 코딩하다가 자주 하는 실수, Java Code Conventions 내용중에 있군요. 써놓고나면 덜 실수하려나... 출처 : http://java.sun.com/docs/codeconv/ Miscellaneous Practices 10.5.1 Parentheses It is generally a good idea to use parentheses liberally in expressions involving mixed operators to avoid operator precedence problems. Even if the operator precedence seems clear to you, it might not be to others-you shouldn't assume ..

backend/Java 2008.03.03 (8)

[영화] 음악과 함께 한 영화

그동안 여러 영화를 봐버려서 하나 둘씩 미루다 보니, 그동안 음악과 함께 한 영화가 여러편 되는군요. "음악'이란 주제로 묶어지는 영화를 정리해봅니다~ㅋㅋ 이 블로그 내용중에 글에는 스포일이 거의 없으나, 동영상에는 스포일이 많이 있을 수도 있습니다~ ^_^ "August Rush" 친구의 적극 보고싶단 말에 한창 붐이 불때 극장을 찾았습니다. 역시나 많은 기대를 하고 가서 인지, 아주 큰 감동은 받지 못했지만, 귀는 역시 즐거웠습니다. 기타에 대해서 잘 몰랐었는데, 아주 행복한 표정으로 기타를 치는 '어거스트'의 표정에서 행복함을 느꼈었습니다. 천재적인 재능으로 태어났지만, 부모 손에서 자랄 수 없었던 아이는 음악을 쫓다보면 부모를 만날 수 있을거라는 희망과 믿음으로 무조건 음악만 쫓다 겪는 여러가지 ..

[dW] IBM developerWorks 리뷰 블로거 2.0 선발과 Mylyn 2.0 통합된 태스크 관리 & 자동화된 콘텍스트 관리

지난 2월 초에 발표된 IBM developerWorks 리뷰 블로거 2.0에 선발이 되어 완전 영광스럽습니다. IBM developerWorks에는 아시다시피 많은 아티클, 튜토리얼등의 문서가 많이 있는데, 리뷰 블로거는 이 문서들을 자신의 블로그에 소개하고 안내하는 역할을 합니다. 저는 이 문서들을 소개하기 위해 문서들을 많이 읽게 되어 저에게도 많은 도움이 되리라 생각합니다. 저의 블로그를 찾는 분이 많으시진 않지만, 혹시나 스쳐지나 가는 분들 중에게도 도움을 드릴 수 있지 않을까~ 작은 기대를 해 봅니다. ^_^ 의지는 불타지만(?) 아는게 별로 없는 초보개발자인 제가 소개하는 내용은 최신기술(아님 조금 지났지만 저에겐 최신기술?)인 것도 있고, 아주 기본기를 정확하게 다지는 글들을 담을려고 합니..

[Spring] Bean과 BeanFactory의 후처리

빈의 후처리 스 프링은 빈의 생명주기에 끼어들어 빈의 설정을 재검토하거나 바꿀 수 있는 2개의 기회를 제공한다. 후처리는 어떤 이벤트가 발생한 후에 처리되는 것이라고 추측할 수 있다. 이벤트란 빈이 설정되거나 인스턴스화되는 것을 말한다. BeanPostProcessor 인터페이스는 빈이 생성되거나 묶인 후에 변경할 수 있는 두개의 기회를 제공 Interface BeanPostProcessor에서는 두개의 메소드를 제공한다 postProcessBeforeInitialization : 빈이 초기화(afterPropertiesSet(), 빈의 커스텀 init-method 호출)되기 직전에 호출 postProcessAfterInitialization : 빈이 초기화된 직후에 호출 빈 팩토리의 후처리 BeanFa..

backend/Spring 2008.02.12 (8)

[Spring] 자동 묶기(Autowire)

자동 묶기(Autowire) 자동 묶기의 네 종류 byName : 묶고자 하는 특성의 이름과 동일한 이름이나 ID를 가진 빈을 컨테이너에서 찾는다. 빈을 찾지 못하면 그 특성을 묶이지 않은 채로 남는다. byType : 묶 고자 하는 특성의 타입과 동일한 타입을 가진 빈을 컨테이너에서 찾는다. 빈을 찾지 못하면 그 특성은 묶이지 않은 채로 남고, 하나 이상의 빈을 찾게 되면 org.springframework.beans.factory.UnsatisfiedDependencyException을 던진다. Constructor : 묶고자 하는 빈의 생성자 중 하나의 파라미터와 맞는 하나 이상의 빈을 컨테이너에서 찾는다. 모호한 빈이나 생성자가 발견될 경우 org.springframework.beans.facto..

backend/Spring 2008.02.12 (2)

[책] 인간은 어쩌면 늘 반복하며 실수를 저지르는 건 아닐까? - 파피용을 읽고

파피용 - 베르나르 베르베르 지음, 전미연 옮김, 뫼비우스 그림/열린책들 설날을 맞이하여 오랫만에 고향집인 광주에 내려가 집에 도착하니 제일 먼저 보이는 것이 나비가 날고 있는 베르나르 베르베르의 파피용 이란 책입니다. 파피용이....무슨 뜻이지?? (이 무식함이란.ㅠㅠ) 그냥 뭐 영화로 나왔던 Papillon이라는 영화는 보지 못했지만 머 가혹한 형무소에서 탈출을 시도했다가 결국 탈출 성공하는 내용에서 이루어 볼때... 음,, 전혀 책 내용이 감이 안옵니다. 책 내용도 탈출하는건가? 뜻이 궁금하긴 하지만, 왠지 모르게 찾아 보는게 귀찮아, 그냥 펼쳐서 읽어보았습니다. 전에도 베르나르 베르베르의 "뇌"라는 책을 "상'권을 사서 읽고 "하"권을 읽으려는 찰나에 오랜 공백기간(연예인도 아니고,,)이 있어서 ..

[Spring] 세터 주입(Setter Injection)의 대안

세터 주입(Setter Injection)의 대안 - 생성자 주입(Constructor Injection) 세터 주입은 빈 특성을 설정하고 묶을 수 있는 직관적인 방법이지만, 한 가지 단점은 변경될 수 있는 모든 특성이 세터 메소드를 통해서 사용할 수 있다고 가정하는 것에 있다. 하지만 빈이 이와 같은 방식으로 작동하기를 원하지 않을 때, 이런 유형의 빈이 인스턴스화될 때에는 어떤 특성도 설정될 수 없으며, 따라서 빈이 유효하지 않은 상태로 있을 가능성이 있다. 어떤 특성들은 빈이 생성될 때 한 번만 설정되고 그 이후에는 변경될 수 없도록 만들고 싶은 경우도 있다. 이는 세터를 통해 모든 특성을 공개하는 경우에는 곤란해진다. 대안은 일부 특성들은 생성자 를 통해 설정될 수 있도록 빈을 설계하는 것이다. ..

backend/Spring 2008.02.05 (5)