블로그 이미지
Max.

calendar

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        

Notice

2007. 3. 29. 08:38 이전글(~2009)

최근 각종 클라이언트측 ajax Framework 들이 독특한 템플릿기능 때문에 Framework 이라기 보다는 Template라는 인상이 더 크게 느껴진다.
템플릿 같은 특수 기호가 마음에 안들기도 하지만, 수순 자바스크립트가 그리운 것 같다.

그런데 .....


Bram Smeets on Ajax with the Spring Framework 글을 통해 새삼 발견한 XT Ajax Framework...
Rich Domain Model를 지향하는 DDD와 관련지은것이 흥미롭다.
이벤트(event) 기반이라, 자바스크립트를 많이 줄일수 있을것 같다.
그러나, Java 1.5 이상의 개발환경 이여야 한단다.
(아직 현장에서 java5,6을 원하는 클라이언트를 만나지 못했다....OTL..... )

[소개글]

The XT Framework is a Spring module for developing applications with ''richer domain models and richer user interfaces'', following the Domain Driven Design practices.

Domain Driven Design puts the domain model in the heart of the development process. The domain model becomes the core of your application and the main focus of your development. It concentrates all business logic, rules and constraints, being totally independent from other application parts. In particular, considering a well-known layered architecture, domain models are designed to be independent from the so called presentation layer and infrastructure/data access layer. Unfortunately, practically speaking, this causes a sort of impedence mismatch among layers, causing code duplication, domain model corruption, or the shy anemic domain model.

The XT Framework aims at solving this mismatch providing the so called XT Modeling Framework for developing rich domain models, which gracefully adapt to other layers.

And if you have a rich domain model, why not having a rich user interface? The XT Framework provides also the XT Ajax Framework, which integrates Spring and its MVC framework with AJAX technologies.

[Important] Important

The XT Framework needs Java 1.5 or later: it will not work in older environments.

posted by Max.

댓글을 달아 주세요

2007. 3. 28. 10:21 이전글(~2009)

DWR 1.x 에서는 설정파일인 dwr.xml이 꼭 필요하다. DWR 2.x에서는 기존방법과 함께 Spring 설정파일로 dwr.xml을 대신 할수 있다.

설정 순서를 보자.

1. web.xml

[DWR 1.x 기존설정]

  <servlet>
    <servlet-name>dwr-invoker</servlet-name>
    <servlet-class>uk.ltd.getahead.dwr.DWRServlet</servlet-class>
    <init-param>
      <param-name>debug</param-name>
      <param-value>true</param-value>
    </init-param>
  </servlet>

  <servlet-mapping>
    <servlet-name>dwr-invoker</servlet-name>
    <url-pattern>/dwr/*</url-pattern>
  </servlet-mapping>


[DWR 2.x 신규설정]

 <servlet>
  <servlet-name>dwr</servlet-name>
  <servlet-class>org.directwebremoting.spring.DwrSpringServlet</servlet-class>
  <init-param>
   <param-name>debug</param-name>
   <param-value>true</param-value>
  </init-param>
 </servlet>

 <servlet-mapping>
  <servlet-name>dwr</servlet-name>
  <url-pattern>/dwr/*</url-pattern>
 </servlet-mapping>



기존에 사용하는 DWRServlet을 DwrSpringServlet으로 사용하는 점이 다른 것이다.
이것은 ContextLoaderListener에서 읽어 들인다.
만약 SpringMVC를 사용한다면,
위 설정 마져도 생략하고, Controller 설정파일에서 <dwr>Tag를 이용해서  설정 가능하다.
ex) <dwr:controller id="ajaxCommentController" debug="true"/>

2. beans-comment-service.xml

일반적인 Bean 설정파일이다. 보통은 applicationContext.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"
  xmlns:p="http://www.springframework.org/schema/p"
  xmlns:aop="http://www.springframework.org/schema/aop"
  xmlns:tx="http://www.springframework.org/schema/tx"
  xmlns:dwr="http://www.directwebremoting.org/schema/spring-dwr"
  xsi:schemaLocation="http://www.springframework.org/schema/beans  
        http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
        http://www.springframework.org/schema/tx
        http://www.springframework.org/schema/tx/spring-tx-2.0.xsd
        http://www.springframework.org/schema/aop
        http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
        http://www.directwebremoting.org/schema/spring-dwr
     http://www.directwebremoting.org/schema/spring-dwr-2.0.xsd">                

<description>comment-service</description>
    <bean id="commentRepository" class="net.max.comment.domain.jdbc.JdbcCommentRepositoryImpl"
      p:dataSource-ref="dataSource"
      p:oracleLobHandler-ref="oracleLobHandler"/>

 <bean id="commentService" class="net.max.comment.domain.CommentServiceImpl">
     <dwr:remote javascript="AjaxCommentService"/>   
     <property name="commentRepository" ref="commentRepository"></property>
    </bean>

</beans>

<dwr> Tag를 사용하기 위해서 Spring DTD를 선언해 주고, Ajax로 서비스할 원하는 Bean에
<dwr> Tag를 넣는다.
이때, SpringIDE의 자동완성 기능이 속성에 관한 도움말을 준다.

설정이 끝났다. 기존 방법보다 월등히 간단해 졌고, 관리도 편해 진다.

3. 테스트 페이지

사용자 삽입 이미지
 getComment( "test",939 ,262); 실행시 결과
사용자 삽입 이미지

4. 참고자료
http://bram.jteam.nl/index.php/2007/01/31/spring-dwr-ajax-made-easy/
http://getahead.org/dwr/server/spring

posted by Max.

댓글을 달아 주세요

2007. 3. 27. 09:08 이전글(~2009)
나는 이 책을 읽으면서 무릎을 칠때가 많았다.
회사가 무섭다는 생각도 들고,
회사가 치열한 야생과도 같다는 말이 실감도 난다.
그곳에서 성공적으로 적응하기 위해서는 이책이 많은 도움을 줄수도 있을 것이다.
이책의 기준으로 했을때 나는 회사에서 많은 잘못된 행동들을 했음이 분명하다.
회사에서는 좀더 신중한 태도로 임해야 할것 같다.
결국, 인생은 연극이란 말이 여기서도 통하는 것인가.....


중이미지보기




책소개 (출처 : Yes24.com)
대부분의 직장인들은 직장 내에서 절대로 해서는 안 되는 명백한 금기 사항에 대해서는 잘 알고 있다. 하지만 이렇게 명백한 금기 사항 외에 우리가 모르는, 그래서 열 배쯤 더 위험한 행동들이 있다. 이 금지구역에 멋모르고 발을 들여 놓은 직원은, 자신이 무엇을 잘못했는지 모른 채 직장생활이 꼬여간다.

미 포춘 100대 대기업에서 인사관리 전략을 담당했던 저자 신시아 샤피로는 이 책에서 회사가 무엇을 기반으로 직원을 평가하는지 무서우리만큼 솔직하게 밝힌다. 회사가 어떤 직원을 승진시키고 누구를 구조조정 명단에 올리는지 알려주고, 각각의 상황에서 어떻게 대처하고 자신을 보호할 수 있는지 조언한다. 그리고 직장인들이 회사에서 일한만큼 인정받고 성공할 수 있는 방법을 차근차근 안내한다.

PS :
Yes24.com과 아무런 관련이 없는데... 강컴엔 이 서적이 없는것 같다.
사용자 리뷰를 보면 별5개와 별1개등 엇깔린 평가가 있는데, 받아들이는 사람의 마인드에 따라 다를것 같다.
리뷰내용은 한번 읽어 볼만 하다.
 
posted by Max.

댓글을 달아 주세요

2007. 3. 26. 09:23 이전글(~2009)

어김없이 아침 지하철(중앙선)을 타고 출근한다.
올해들어 뭔가해야 겠다는 생각에 다소 이른시각에 일어나 한시간 가량 공부(?)를 하고 출근한다.
과거엔 출근길에 책을 보는 시간이 많았는데, 요즘은 피곤해서 그냥 졸고 오는 경우가 많다.
보통은 집이 서울과 떨어진 외곽에 있는지라, 지하철에서 자리에 앉고 출근한다.
그런데 오늘은 사람이 많아 앉질 못했다.
졸지 못하니 멀뚱멀뚱 오기 뭐해서 요즘 읽고 있는책을 꺼내 들었다.
'리스크관리'라는 책인데 다소 딱딱하다.
그래도 앉아 있는 사람중 빨리 일어날것 같은 사람을 한명 골라 그 앞에 서서 책을 읽었다.
(조금이라도 앉아서 갈려는 심사에.... ㅡㅡ; )

어느정도 가다가 옆에서 누가 확 밀친다. 고개를 돌려보니, 50대 아줌마인것 같다.
자꾸 삐집고 들어오는게 신경쓰인다. 역시 아줌마인가?
결국 그 아줌마는 내가 점찍은 자리에 날 밀치고 차지했다.
얼마후 그 자리가 비었고, 아줌마는 잽싸게 자리에 앉았다. (또 당했다. ㅡㅡ; )
그런데, 아줌마 동행이 있었다. 30이 갓안되어 보이는 청년이였다.
책을 읽으면서도 그쪽에 신경이 가는건 자꾸 아줌마가 아들로 보이는 청년에게 자리에 앉으라는
손짓을 한다.
속으로 그게 부모마음이란것에 동의 했다.
열차가 조금이라도 기웃뚱하면, 아줌마는 아들을 잡을려고 했다.
좀 과잉보호처럼 느끼기도 했다. 아들은 시큰둥하며, 책을 서서 보고 있었다.
책을 보니 무슨 공무원수험서 같은 것이였다.
그 모습을 보니 나도 내 딸에게 무슨일이 있으면, 밥먹다가도 달려가서 가는데,
약간 이나마 부모마음을 아는걸까? ^^;
얼마후 내 앞에 자리가 나왔는데... 역시 아줌마다.
'아들! 여기 자리 있으니 어서 앉어... ' 
어? 거기 내자리인데? 또 한번 당했다.
아들은 자연스럽게 내앞자리를 앉았다. ㅡㅡ;
부모마음은 인정하겠는데, 거기 앉는 저 청년은 뭐란 말인가? 마마보이 같다.
덕분에 계속 서서 왔다.

내가 타는 중앙선은 사실 한강을 따라 간다.
대부분의 역이 지하가 아닌 지상이다.
그동안 계속 앉아서만 오다보니 밖을 보지 못했는데, 오늘 보니 아름다운 풍경이였다.
아침 햇살에 한강이 눈부시게 비쳐온다.
철새들인지 한강에 두둥실 떠 있고, 하이킹복장의 사람들도 자전거 타기를 즐기고 있는듯 보였다.
잠시 책을 덮고, 창밖 보는것을 즐겼다.
집이 멀리 있지만, 강을 보면서 출근하는 나도 어느정도 축복받는 놈인가?
마음이 편안해졌다.
잠시 자리를 앉지 못한 서움함도 사라지고, 덕분에 다른 즐거운 풍경을 볼수 있었다.
그러면서 이런저런 잡생각(좋은말로 사색)이 들었다.
나는 잡생각하길 좋아하고 즐긴다.
대부분 너무 현실성 없는 생각까지 하는게 문제지만, 가끔은 건설적인 생각도 한다. ^^;
오늘은 질문에 관해서 조금 생각해 봤다.
요즘 틈틈히 읽고 있는 '질문의 7가지 힘' 이란책에 영향을 받은듯 하다.

이번주는 바쁠것 같다.
회사일에서 중요한 일을 처리해야하는 주이기 때문이다.
이번주만 잘 넘어가면, 다음주엔 숨좀 돌릴수 있을것 같다.

posted by Max.

댓글을 달아 주세요

  1. 만남 친구를 원하십니까???

    바로 이곳입니다.

    채팅사이트 아닙니다.
    미팅사이트도 아닙니다.
    화상채팅 사이트 절대로 아닙니다.

    지금 바로 만날 파트너만을 구하는곳~!

    http://SoraEnjoy.com
    http://SoraEnjoy.com
    http://SoraEnjoy.com

    엔조이파트너에서 원하는 조건과 스타일의 이상형을 만나보십시요.
    (조껀하려는 여성분들도 강추!)

2007. 3. 23. 09:34 이전글(~2009)
네이버 블로그에서 모든 글을 가져 왔지만
새로운 마음으로 시작하기 위해서
다 지웠다.....ㅡㅡ;
공허한 블로그를 보니.... 허전하다...

앞으로 어떤 내용으로 도배할까 생각해 보니...
가장큰 부분은 POJO기반의 도메인 격리된 프로그래밍인것 같다.
이놈은 계속 가지고 놀 놈이다.
처음부터 도메인을 게시판으로 잡아서, 찜찜한데 나중에 확 바꿔버릴수도 있다.

다음으로 생각하는 이슈는 Spring과 Hibernate 인데....
둘다 버거운 놈들이다. 하나씩 알아가면 알아 갈수록 모르겠다.
이외에 가끔씩 이슈화되는 각종 기술들을 참조 할수 있는 링크페이지를 만들어 가는것도 좋을것 같다.

어쨌든,
이제 시작이다.
아~자!
posted by Max.

댓글을 달아 주세요

  1. 이사와 시즌2 시작 축하드립니다. ^^
    자주 놀러올께요~ :)

    • Favicon of https://yunsunghan.tistory.com BlogIcon Max. 2007.03.23 19:59 신고  Addr Edit/Del

      감사 합니다.
      준비도 없이 일단 저질려 보았습니다. ^^;
      송치형님 블로그 항상 모니터링 하고 있습니다. :D

  2. Favicon of http://www.ologist.co.kr BlogIcon ologist 2007.03.24 21:00  Addr Edit/Del Reply

    새로운 그릇에서 더 많은 삶의 이야기를 듣고 싶군요...^^

    • Favicon of https://yunsunghan.tistory.com BlogIcon Max. 2007.03.26 08:50 신고  Addr Edit/Del

      삶의 이야기라.... 나직 나이가 삶을 이야기 하기엔... 좀....
      그냥 하루하루 신변잡기를 말씀하신거죠? ㅎ ㅎ 넵!

2007. 3. 23. 09:27 이전글(~2009)

내가 좋아하는 '물개선생'님의 대화술이 여기 있는지도 모르겠다.
이책을 알게된 동기가 약간 특이하다.
몇일전 지하철에서 어떤 중년의 여성이 이 책몇줄을 읽고 눈감고 생각하다가 다시금 책을 펼치고 읽기도 했다.
책이 뒷면으로 덮어져 있어서 손잡이를 잡고 서있는 내가 제목을 볼수 없는 상황이였다.
뒷면엔 '적절한 질문으로 원하는 것을 얻을수 있다'는 비슷한 문구가 있었다.
'이거다' 싶었다.

제목을 알아내기 위해 망설이다가 가방에 있는 노트와 볼팬을 꺼내고는 그냥 물어봤다. ㅡㅡ;
'저기.... 실례가 안된다면, 책 제목좀 볼수있을까요?' 이 질문 자체가 실례인데... ^^;
아무튼 약간 무식한 용기로 그 책의 제목을 노트하고 가볍게 목례를 하고 돌아섰다.
좋은책인것 같으니 생각하면서 읽어 봐야 겠다.

중이미지보기


책소개 (출처 : Yes24.com)

"왜 사진은 금방 볼 수 없는가?"에서 폴라로이드 카메라가, "어떻게 하면 좀더 효율적으로 고객에게 물건을 팔까"라는 질문이 수많은 마케팅 이론을 만들어냈다. 이 책은 일상생활 속에서 적절하게 던지는 질문이 우리의 삶을 얼마나 뒤바꿔놓을 수 있는지 질문의 7가지 힘을 설명하면서 삶의 길잡이가 되어주는 질문방법을 알려준다.

저자에 따르면 질문을 통해 생각할 기회를 갖고 상대방이 원하는 것을 알 수 있게 되며, 생각을 자극하여 새로운 아이디어를 얻을 수 있게 해준다. 또한 어려운 상황에서 스스로에게 질문을 함으로써 자칫 감정적으로 처리할 수 있는 문제를 통제해주며 의식적, 의도적으로 질문을 반복하다보면 더 나은 해결책을 마련해 줄 수 있다는 것이다.

화술, 듣기, 논리적 사고방식에 대한 책은 많으나 질문에 관해 본격적으로 다룬 책은 없었는데 이 책은 대인관계, 화술, 문제해결 등에서 큰 위력을 발휘하는 질문에 대해 자세하게 다룸으로써 새로운 시각을 갖게 해준다.

posted by Max.

댓글을 달아 주세요

  1. Favicon of http://younghoe.info BlogIcon 영회 2007.03.23 10:16  Addr Edit/Del Reply

    저도 함 봐야겠네요.

  2. 네. 읽어 볼만 할것 같아요.... ^^