전체 글 172

Calendar 객체에서 주, 요일(일~토)를 이용한 날짜 변환

자바에서 자주사용하는 객체가 있다면 그건 java.util.Date 그리고 그 다음이 java.util.Calendar 일 것이다. 그 중에서 날짜를 변환 하기 위해 사용되는 객체는 java.util.Calendar 객체일 것인데, 일반적으로 날짜를 변환 하려 할 경우 년, 월, 일 을 Set 하는 방법으로 변환 하곤 했다. 이 방법은 기초중에 기초 가장 자주사용하고 그렇기 때문에 설명할 필요도 없는 쉬운 방법인데... 모든 프로젝트가 그렇듯이 쉬운것이 없다. 항상 프로젝트는 예상밖에 니즈를 필요로 한다. (그래서 경력이 있는 개발자는 노하우가 쌓여있는 고급인력이 되는것이 겠지만...^^) 스케쥴을 담은 명단을 저장한다고 가정하자, 그런데 문제는 고객은 일반적인 생각을 하는 사람이 아니다. 그 사람은 요..

Spring3 @ModelAttribute 사용시 Date 값 매핑방법

Spring MVC 모델를 사용할때 @ModelAttribute 라는 어노테이션 기능이 있다. 이 기능을 간단하게 설명하자면 보통 form 입력을 받을 경우 /** 일반적인 파라메터 객체에 주입방법 **/ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String parameter1 = request.getParameter("parameter1"); String parameter2 = request.getParameter("parameter2"); String parameter3 = request.getParameter("parameter3"..

Framework/spring 2012.05.18

jQuery Template

출처: http://igna.tistory.com/21 요전에 프로젝트 할 당시에 이런식의 코드를 많이 작성했더랬는데 많은 귀찮음이 따르는 작업이었다. ?123456789101112131415161718192021222324function displayItems( list ){    var i;    var n = list.length;    var table = $("#sampleTable");     for( i = 0; i     {        var html = table.html();        html += '';        html += '';        html += '+ list[i].image + '" ..

javascript/jquery 2012.02.21

jQuery - Ajax - crossdomain 이슈 #2

출처: http://igna.tistory.com/20 이전에 이야기 했던 JSONP 방법과는 다르게 좀더 정석적인 방법으로 jQuery를 다뤄 Crossdomain을 해결한 것은 검색이라는 삽질과 수많은 테스트 코드를 낳고서야 해결점이 보이기 시작했다.(물론 결국 찾아낸건 회사 차장님의 덕택이었지만)일단 몇가지 문서들을 봐야만 했는데  jQuery.ajaxPrefilter() 부분이었다. 이 ajaxPrefilter() 메서드는 ajax의 low-level 메서드로 jQuery를 통해 ajax통신을 하게 될때 콜백함수로 호출되어 통신을 위한 밑작업들을 수행하게 되는데 cross-domain또한 이 메서드 중간에서 차단하여 막는것도 여기서 처리하게된다. 이 사실을 어떻게 알았냐면 Extending A..

javascript/jquery 2012.02.21

jQuery - Ajax - crossdomain 이슈

출처: http://igna.tistory.com/19 jQuery 최신 버젼을 갖고 Ajax통신 기능을 이용하려고 하면 종종 직면하게 되는 이슈는 crossdomain 이슈다. crossdomain 이슈가 뭐냐고 물어보는 사람들을 위해 잠깐 설명하자면- crossdomain 이슈사항 정리 -1. 전제조건 - 조건 1: 내가 보고 있는 페이지의 주소는 http://www.aaa.com 이다.- 조건 2: http://www.aaa.com의 페이지가 http://www.bbb.com의 rest api 를 호출하여 데이터를 JSON으로 가져오려고 한다.2. 결론 조건 1의 내가 이용하는 페이지의 주소의 도메인과 조건 2의 데이터를 가지고 오기위한 서버의 도메인이 서로 상이할 경우 crossd..

javascript/jquery 2012.02.21

putty 화면 설정

PUTTY는 원격으로 리눅스 쉘을 이용하는 ssh를 이용하는데 있어 가장 흔히 이용되는 프로그램이다. 강력한 성능에 실행파일 하나로 설치 안해도 되는 포터블 버전도 제공하기 때문에 정말 자주, 많이 이용되는 프로그램이다. 하지만 기본 설정대로 이용시에 약간의 불편함이 있어 그를 해결하기 위해 내가 사용하는 설정을 공개한다.1. 버퍼크기.라인 버퍼는 커맨드를 실행했을 때 화면상에 보여지는 줄의 수를 말한다. 만약 라인 버퍼가 작다면, 여러줄 출력되는 명령어 실행시에 화면을 스크롤해서 보면 일정 부분이 짤려 보이게 된다.  기본 설정에서는 200줄로 한정돼 있으므로 200줄 이상 화면에 출력된다면, 실행 도중에 프린트 되는 내용의 일부가 짤리고 최종 200줄만 볼 수 있는 것이다.  그래서 나는 1만줄..

Etc 2012.01.04

[spring-data/mongodb] 클라이언트 콘솔에서 DBRef로 등록된 객체를 통해 find()하는 방법.

DBRef로 참조된 객체는 "owner" : { "$ref" : "users", "$id" : ObjectId("4edefb3dfa30c0d0702f2d83") } 처럼 document에 참조가 된다. 일반적으로 그냥 ID값만 string값으로 저장도 가능하지만 DBRef를 사용하면 Spring-data 라이브러리에서 mongodb 드라이브를 통해 굳이 명시하지 않아도 자동으로 객체를 가져오는 기능이 있어 편리하다.. 서론은 이쯤하고 개발을 하게 되면 실제로 데이터가 어떻게 들어갔는지도 알고싶고 클라이언트 콘솔에서 직접 find()를 날려봐야할 경우가 생긴다. 이때 개발에서와는 다른 문법을 사용하게 되어 기록한다. 자바 드라이버를 이용한 쿼리에선 where("owner.$id").is(new Object..

NoSQL/MongoDB 2011.12.26

java.util.regex.Pattern 설명 (Regular Expression > Methods of the Pattern Class)

지금까지 우리는 test harness를 이용하여 패턴 객체를 생성하고 그들의 기본 폼을 이용하였다. 이번 섹션에서는 좀더 향상된 기술로 플래그와 함깨 패턴을 생성하거나 포함된 플래그 표현들을 이용할 것이다. 우리가 아직 논의하지 않은 몇가지 유용한 추가적인 내용들에 대해서 논의할 것이다.Creating a Pattern with FlagsPattern 클래스는 플래그를 제공하는 새로운 compile 메소드를 가지고 있다. 플래그 파라미터는 비트 마스크 처리가 되며 다음과 같이 public static field들로 구성되어 잇다.Pattern.CANON_EQ 규칙에 의해서 같은지 검사하도록 한다. 이 플래그가 지정되면 2개의 캐릭터는 매치를 수행할때 전체가 규칙에 의해서 분해를 수행한 것이 매칭이 되..