'비교'에 해당되는 글 7

  1. 2011.11.27 Comparable#compareTo()
  2. 2011.11.22 다음 클라우드 사용시 CPU 과부하 문제
  3. 2011.07.04 Daum 클라우드 - 클라우드 서비스 비교
  4. 2010.06.17 SQL Server 2005 에서 2000 으로 변경하기
  5. 2010.03.30 Firefox의 몰랐던 기능 - 소스보기
  6. 2009.08.28 위키 문법
  7. 2009.06.11 JSTL 비교 연산자

Comparable#compareTo()

BigDecimal expirtation = new BigDecimal("2012....");
BigDecimal now = new BigDecimal("2011....");
System.out.println(expirtation.compareTo(now)); // >, 1

expirtation = = new BigDecimal("2005....");
System.out.println(expirtation.compareTo(now)); // <, -1

boolean expired(){
    return expirtation.compareTo(now) < 0; 
    //만료일이 작으면(-1), 만료일이 지난 경우, expired? yes, 리턴 true
    //만료일이 크면(1), 아직 만료되지 않았으면, expired? no, 리턴 false
    //동일하면(0) 아직 만료되지 않았다, expired? no, 리턴 false
}

다음 클라우드 사용시 CPU 과부하 문제

다음 클라우드를 잘 사용하고 있었는데 파일이 많아지니깐 속도가 떨어지고 CPU를 많이 차지한다.
급기야 동기화하는 도중에 노트북이 다운되기도 한다.

파일이 많아지는 것보다 디렉토리 구조가 복잡해져서 CPU를 많이 차지하는거 같다.
디렉토리 깊이가 얼마되지 않으면 동기화가 신속히 된다.
하지만 CPU를 많이 사용하기는 한다. 잠깐이지만.

디렉토리를 정리하고, 공유된 파일중에 디렉토리 구조가 복잡한게 있는데 이거는 압축해서 공유하도록 한다.

업무적으로 사용하는 파일은 N드라이브를 이용하는데 파일을 몇 개만 동기화 시키도록 해서 불편한 점을 없앤다.

Daum 클라우드 - 클라우드 서비스 비교

회사와 집에서 파일을 공유하기 위해 여러 클라우드 서비스를 비교하다 Daum 클라우드를 사용하게 되었다.
아직 불편한 점도 있지만 더 나은 모습을 보일거라 생각된다.

- Box.net
예전에는 1GB 였는데 지금은 5GB.
위젯을 사용해서 음악듣는데 사용.
많은 기능이 추가되었음.
여기도 속도나 용량 문제가 ...

- SkyDrive
예전에 SkyDrive(+Gladinet) 를 사용한 적이 있었는데, 속도가 느렸다.
요즘은 25GB 정도 주는듯.

- N드라이브
그러다가 N드라이브가 서비스를 시작하면서 사용하였다.
파일을 N드라이브에 올려두고 편집을 했는데 속도에 문제가 있어서 사용하지 않게 되었다.
지금은 속도가 많이 좋아졌겠지만 특정 폴더를 동기화시키는 방식이 사용자 입장에서는 더 나은거 같다.
(얼마전부터 동기화 폴더를 제공한다. 이렇게 되면 내가 원하는 기능은 N드라이브가 충족을 한다.)

그러다가 요즘 마인드맵을 사용하면서 회사나 집에서 동일한 환경에서 작업을 할 방법을 찾게 되었다.
웹 마인드맵은 속도나 CPU를 많이 차지하였고, 한글이 제대로 지원되지 않았다.
마인드맵 파일을 공유하는게 가장 좋을거 같았고, 방법을 찾게 되었다.

- KT ucloud
KT 인터넷을 사용하지 않아서 고민대상이 아님.
동기화 폴더를 여러 개 지정하는 기능이 있는데 Daum 클라우드에서도 지원했으면 한다.

- U+Box
여기도 LG 인터넷을 사용하지 않아서 고민대상이 아님.
업로드한 동영상을 서버에서 인코딩하는 기능을 지원하는 듯.

- DropBox
동기화 기능은 최곤데, 용량이 부족.

- Daum 클라우드
속도는 네이버나 다음이나 만족할만하다.
공유, 파일 버전관리가 된다.

- OneDrive
동기화가 불안정?
앱에서 한글 보기가 안됨.


동기화 폴더를 더 추가할 수 있는 기능이 있었으면 좋겠다.
그리고 동기화 제외 설정이 있었으면 좋겠다. 서버에 올린 파일이 모두 동기화되는 것을 원하지는 않는다.



SQL Server 2005 에서 2000 으로 변경하기

- row_number() 함수가 2000에서는 지원되지 않으므로 페이징 쿼리를 다시 작성

- 동의어 지원 안됨
원격 뷰, 원격 프로시저에 동의어를 사용했음.
기존 동의어 이름과 동일한 뷰를 만들고 이 뷰가 원격 뷰를 참조하도록 한다.
프로시저도 마찬가지.

Firefox의 몰랐던 기능 - 소스보기

FF가 IE보다 화면을 렌더링하는게 더 좋은 듯하다.
느린 PC에서 대량의 데이터 출력하면서 IE에서는 멈춘듯이 보이는데 FF에서는 좀더 빠른거 같다.(?)

소스보기에서 몰랐던 기능이 있다.
여러 프레임으로 구성된 화면에서 javascript로 화면 문구를 표시해주는 기능이 있다.
IE에서 소스보기로 보면 프레임으로 나누어져 있는데도 해당 페이지의 소스가 잘 보인다.(예전에는 안그랬던거 같은데 IE7에서는 되네)
FF에서는 소스보기를 하면 최상위의 프레임만 보이는데 src로 걸린 페이지의 소스로 연결이 된다.
게다가 특정 부분을 선택하면 그 부분의 소스만 보인다.
여기까지는 그동안 알고 있었는데 위의 javascript로 지정했던 문구가 그대로 보인다.
javascript 디버깅에 이보다 좋을수는 없을거 같다.

위키 문법

- JSPWiki 형식
- Trac Wiki 형식

Trac Wiki
= 유지보수 = / === 작은 제목 ===

JSPWiki
!!!유지보수 / !작은 제목

Trac Wiki
[wiki:SystemInfo 시스템 정보]
[wiki:시스템_정보 시스템 정보] //링크될 페이지 이름에 공백이 있으면 안됨
[/projects/OtherProject/wiki/시스템_정보 시스템 정보] //다른 프로젝트의 위키로 링크를 건다.
[attachment:wiki:인터페이스:인터페이스_정의서_v1.4.xlsx?format=raw 인터페이스 정의서] 참고 //Ticket에서 다른 wiki페이지에 첨부된 파일 링크

JSPWiki
[시스템 정보|SystemInfo]

Trac Wiki
 * LIST1 //* 앞뒤로 공백이 있어야 함.
  * LIST2
   * LIST3

JSPWiki
* LIST1
** LIST2
*** LIST3

Trac Wiki
 1. LIST1
 1. LIST2
  1. LIST2.1
  1. LIST2.2

JSPWiki
# LIST1
# LIST2
## LIST2.1
## LIST2.2

Trac Wiki
||Cell 1||Cell 2

- *와 테이블을 같이 사용할 때 (공백)||Cell 1... 이렇게 사용하면 보기 좋게 정렬된다.

Trac Wiki
~~취소선~~

JSPWiki
%%strike 취소선/%

Trac Wiki
'''강조'''


JSTL 비교 연산자

- 테스트환경 1
잘모름

- 테스트환경 2
Apache Tomcat/5.5.9
standard-taglib 1.1.2

  ${test} ${empty test} ${test == null} ${test == 'null'} ${test == ''} ${test == ' '}[각주:1] ${test == '0'} ${test == 0}
 [각주:2] "" true true false false false false false
pageContext.setAttribute("test", null); "" true true false false false false false
pageContext.setAttribute("test", ""); "" true false false true false false true
pageContext.setAttribute("test", " "); " " false false false false true false Exception[각주:3]
pageContext.setAttribute("test", new Integer(0)); 0 false false[각주:4]
Exception[각주:5]
Exception[각주:6] true Exception[각주:7] true true
pageContext.setAttribute("test", "0"); 0 false false false false false true true

- empty 연산자는 test 가 없는 경우 참이다.
- Map, List, 배열이 비어 있는 경우에도 참이다.

[todo] 다른 구현체에서도 해볼 것.(resin, glassfish...구현체 확인해 둘것)
  1. 테스트환경 2에서 추가 [본문으로]
  2. 테스트환경 2에서 추가 [본문으로]
  3. An exception occured trying to convert String " " to type "java.lang.Long" [본문으로]
  4. 테스트환경 1 [본문으로]
  5. 테스트환경 2, An exception occured trying to convert String "null" to type "java.lang.Long" [본문으로]
  6. An exception occured trying to convert String "null" to type "java.lang.Long" [본문으로]
  7. An exception occured trying to convert String " " to type "java.lang.Long" [본문으로]