전체 글 375

valueOf() 와 parseInt()

출처: http://java67.blogspot.kr/2013/03/how-to-convert-java-string-to-int-or.html 우선 자바5 부터는 autoboxing이 되기 때문에 int와 Integer 사이의 변환은 그냥(?) 된다. Integer.valueOf()와 Integer.parseInt()를 두고 본다면 Integer.valueOf()가 내부적으로 -128~127을 캐시하기 때문에 좀 더 유용하다. 그리고, 캐시에 자료가 없으면 Integer.parseInt()를 호출한다. 그렇다면, 실제로는 String이 -128~127인 경우에만 유용한게 아닌가?

Java 2013.03.09

AWS 이미지에서 인스턴스 런치 하기!?

보통 AWS EC2 인스턴스에 대해 스냅샷이나 이미지를 떠놓고 재활용하기 마련인데,준비 해놓은 이미지에서 인스턴스를 런치하는게 안된다.제대로 말하자면 런치는 됐는데, 인스턴스 상태 체크가 실패한다. 인스턴스의 시스템 로그를 보니까 이미지로 만들어지는 볼륨이 마운트가 안된다.이유는 볼륨 파일시스템이 ext4라서...?! ext2, ext3로 mount 해보고 안되니까 "실패"라면서 커널 패닉. 이거 어떻게 해결하지... ...일단은 인스턴스 띄우고 서버 설정 다시 하기로;

Cloud 2013.03.07

AWS 이미지를 다른 region에 복사?

AWS에서 EC2 instance를 생성하고, 그 volume에서 snapshot을 뜨고 또 거기서 image를 떠놓는다.다음에 이 image로 instance를 생성하면 초기 세팅 작업을 하지 않아도 되니까.하지만, 이 image가 다른 region으로 복사가 안된다. 젠장. 이것때문에 복잡한 스크립트를 만들어서 별도로 서비스 하는 곳도 있더라; 근데, image를 만들기 전 단계인 snapshot은 다른 region으로 복사가 된다.image를 만들어 두지 말고, snapshot을 만들어둬야겠다. 다들 image 복사할 생각만 해서 그런지 volume이 복사되는건 모르는건가?

Cloud 2013.03.07

Android Pre Compiler NPE

이클립스 안드로이드 개발 플러그인을 21.0.1로 업데이트하고 나서 Android Pre Compiler에서 NullPointerException이 발생하여 프로젝트 빌드가 되지 않는 현상이 발생했다. 이유는 .svn 디렉토리 .DS_Store 파일이나 확장자가 없는 파일들 때문이라고 한다. [링크] 프로젝트의 Properties > Resource > Resource Filters 에 설정을 추가해서 관련 파일들을 제외시켜주면 해결된다.

iOS & Android 2013.01.30

파일 생성 시간 바꾸기 (Mac)

이 내용은 맥(Mac) 환경에만 해당된다. 사진이나 동영상을 수정, 복사 하다보면 파일의 생성시간이 바뀐다. 보통 생성 시간 역순으로 정렬하는데, 이런 정렬 방식에 어긋나는 녀석이 생긴다. 보통의 사진 편집툴은 생성시간이나 수정시간을 변경할 수 있는 기능을 제공하지만 굳이 시간 변경을 위해 편집툴을 이용할 필요가 없다. 맥에서는 커맨드로 SetFile을 제공한다. 다만 이걸 사용하기 위해서는 Xcode의 CLI 패키지를 설치해야 한다. (개발자 말고 일반 사용자에게는 이게 더 번거로울지도 모르겠다.) $ SetFile Usage: SetFile [option...] file... -a attributes # attributes (lowercase = 0, uppercase = 1)* -c creator ..

Mac 2013.01.15

UIViewController initWithNibName, viewDidLoad 호출 순서!?

UIViewController의 initWithNibName에서 초기값을 설정하고, setSomthing() 류의 함수를 외부로 노출하여 실제 화면에 보여지기 전에 something 값을 얻어서 화면에 반영하려고 했다. 즉, 기대하는 호출 순서는 initWithNibName -> setSomething -> viewDidLoad 가 되겠다. 하지만 실제로는 initWithNibName -> viewDidLoad -> setSomething 으로 불려지더라... -_-; initWithNibName 안에 다음과 같은 코드가 있었는데, 크기를 구하는 것 때문에 initWithNibName 처리 중에 viewDidLoad를 호출해버리는 것 같다. 레이아웃이 이루어진 다음에 구할 수 있는 값은 viewDidLo..

iOS & Android 2013.01.14

Send to Kindle

Kindle Paperwhite를 구매하고 나서 읽을 거리들을 밀어넣는게 일이 되어버렸다. 아이패드 미니 레티나는 언제 나오려나... 웹에서 보는것들은 Klip.me와 브라우저 확장 플러그인으로 그나마 쉽게 (이것도 결과물을 보면 그다지 만족스럽진 않다.) 넣을 수 있다.PDF나 ePub 파일은 문서 정리겸 사용하고 있는 calibre에서 mobi 형태로 바꿔주고 Kindle에 밀어넣어주는 기능을 이용해서 처리 하고 있다. 하지만 이것도 변환된걸 보고 있으면 .... 어쩌다 오늘은 웹 페이지를 긁어다가 텍스트 편집기(맥용)에 붙여넣기하고, Send to Kindle로 밀어넣는걸 해봤다. PDF로 출력되는 형식이었다. 처음에는 용지 설정을 80*110, 100*120, 110*130 등으로 바꿔가며 확인해..

etc. 2013.01.12

HttpURLConnection 사용시 http ~ https 간의 리다이렉션 처리

HttpURLConnection을 이용하여 요청을 처리하는데, 이 URL이 http -> https 나 https -> http로 리다이렉션 되는 경우 넘겨받는 InputStream에 원하는 결과가 들어있지 않다. 다음은 http - https 간의 리다이렉션을 처리하여 InputStream을 넘겨주는 코드이다. 출처 : http://docs.oracle.com/javase/1.4.2/docs/guide/deployment/deployment-guide/upgrade-guide/article-17.html private InputStream openConnectionCheckRedirects(URLConnection c) throws IOException { boolean redir; int redire..

Java 2013.01.03