{{ note.content }}

Thymeleaf 사용경험 공유


Java의 뷰템플릿

최근 프론트엔드 개발도 하게 되면서, 뷰템플릿에 대해 많이 고려했다. 이렇게 뷰템플릿을 많이 생각해본 것도 jsoup을 사용하게 된 이유랑 비슷한데, 일단 장고(django)의 뷰템플릿을 한번 경험해본 게 큰 이유였다. 확실히 JSP + JSTL 보다는 훨씬 쉬웠기 때문이다. 이런 경험이 있다보니 자바에서 비슷한 구현체를 찾았고, Thymeleaf, freemarker, tiles, jade4j 등등을 비교해 보았다. 그리고 최종적으론 Thymeleaf로 결정했다.

Thymeleaf를 선택한 이유

처음엔 이거 대체 어떻게 읽어야 될지 몰랐는데, 타임리프라고 읽는다 카더라 ...

jsoup 사용중 SocketTimeoutException


Java의 BeautifulSoup

요즘 여러가지 언어들을 사용하다보니, 한번 사용해보고 좋았던 라이브러리들은, 다른 언어로도 구현된 것들을 찾아보곤한다. jsoup도 그중에 하나인데, python으로 구현된 BeautifulSoup을 구현한 것이다. 최근 페이지를 스크랩해서 데이터를 정제해야할 일이 있었다. 모듈화 해서 쓰려고 자바로 된 구현체를 찾다가, jsoup을 발견하게 되었고, 최근엔 많이 사용하고 있다.. 사용방법은 잘 정리된 글이 많으니 따로 다루진 않겠다. (사용법이 잘 정리된 글 > 에돌이의 얕고 넓은 샘 :: jsoup - 자바를 위한 BeautifulSoup (HTML parser))

뜬금없는 SocketTimeoutException ...


FTPClient doCommand와 문자 인코딩 확인


FTPClient를 이용해 특수한 FTP 명령 사용하기

 

FTPClient는 apache-commons-net 라이브러리중의 일부이다.

 

 

FTPClient에선 기본적으로 FTP통신에서 사용하는 명령(commnad)들을 메소드로 구현해 두었지만

 

모든 명령이 구현되어 있지는 않다.

 

이런 특수한 명령의 경우 FTPClient안에 doCommand 메소드를 사용하면 해결이 가능하다. 

 

예를 들어, option 값을 주는 명령 OPTS에 "utf8 on"이라는 파라미터를 주고 싶으면

ftpClient.doCommand("OPTS", "utf8 on");

위와 같은 방법으로 사용하면 된다.

 

doCommand를 이용해 문자 인코딩 확인

 

  ...


Decorator 패턴


12.Decorator 패턴

스펀지 케이크에 크림을 바르면, 크림 케이크가 됩니다. 이 위에 딸기를 얹으면 딸기 케이크, 초콜릿을 바르면 초코케이크, 생일 초를 꽂으면 생일 케이크가 됩니다. 위에 나열한 케이크 모두 처음에는 다 같은 스펀지 케이크 입니다. 그러나 다양한 장식(?)을 하면 다양한 케이크가 만들어집니다. 이처럼 오브젝트(객체)도 케이크와 비슷한 경우가 있습니다. 우선 스펀지 케이크와 같은 중심이 되는 오브젝트가 있습니다. 이 오브젝트에 장식이 되는 기능을 하나씩 추가하면 좀더 목적에 맞는 오브젝트가 ...


Page 1 of 5.