6월, 2013의 게시물 표시

java stringwriter vs stringbuilder vs stringbuffer

이미지
StringWriter java.lang.Object | +-- java.io.Writer | +-- java.io.StringWriter 출력을 캐릭터 라인 버퍼에 모으는 문자 스트림 입니다. 이 캐릭터 라인 버퍼를 사용해 캐릭터 라인을 구축합니다. S tringWriter  를 닫아도, 무슨 영향도 없습니다.  IOException  를 생성하지 않고 스트림이 닫혀진 후에, 이 클래스의 메소드를 호출할 수가 있습니다. 참고 :  http://xrath.com/javase/ko/6/docs/ko/api/java/io/StringWriter.html ----- StringBuilder java.lang.Object java.lang.StringBuilder 문자의 가변 순서입니다. 이 클래스는, StringBuffer  와 호환성이 있는 API (을)를 제공합니다만, 동기화는 보증되지 않습니다 . 이 클래스는, 캐릭터 라인 버퍼가 단일의 thread (일반적인 케이스)에 의해 사용되고 있었을 경우의  StringBuffer  의 간단한 대체로서 사용되도록(듯이) 설계되고 있습니다. 이 클래스는, 대부분의 구현으로 고속으로 실행 되므로, 가능한 경우는, StringBuffer  보다 우선해 사용하는 것을 추천합니다. StringBuilder  의 기본적인 오퍼레이션에는, append  메소드 및  insert  메소드가 있어, 이러한 메소드는 어떤 종류의 데이터도 받을 수가 있도록(듯이) overload 되고 있습니다. 메소드는 각각 주어진 데이터를 효율적으로 캐릭터 라인으로 변환해, 캐릭터 라인중의 문자를 캐릭터 라인 빌더에 추가 또는 삽입합니다.  append  메소드는 항상, 빌더의 말미에게 줄 수 있었던 문자를 추가해, insert ...

maven test시 resource 경로

The classpath mechanism does not work for files. Relative file paths are resolved from the current directory, not from the classpath elements. So you could just do File xmlFile = new File ( "target/test-classes/xxxx.xml" ); File xsdFile = new File ( "target/test-classes/xxxx.xsd" ); However, a much cleaner solution would be to work with InputStreams instead of files. Almost every library that supports  File  parameters also supports  InputStream  parameters. And that way you can use  ClassLoader  magic without manually specifying any paths: ClassLoader cldr = Thread . currentThread (). getContextClassLoader (); InputStream xmlStream = cldr . getResourceAsStream ( "xxxx.xml" ); InputStream xsdStream = cldr . getResourceAsStream ( "xxxx.xsd" ); Reference: Byte Streams  (Sun Java Tutorial) ClassLoader  (javadoc) InputStream  (javadoc)

os 버전 확인

[root@test1 search]# uname -a Linux test1.finglr.com 2.6.18-194.32.1.el5 #1 SMP Wed Jan 5 17:52:25 EST 2011 x86_64 x86_64 x86_64 GNU/Linux [root@test1 search]#  lsb_release -a LSB Version:    :core-3.1-amd64:core-3.1-ia32:core-3.1-noarch:graphics-3.1-amd64:graphics-3.1-ia32:graphics-3.1-noarch Distributor ID: CentOS Description:    CentOS release 5.5 (Final) Release:        5.5 Codename:       Final [root@test1 search]#

java용 oxm 선택

oxm은 xml를 마샬링(xml로 변환) 또는 언마샬링(객체로 변환) 하는 기술이다. 선택 사항은 Castor, JAXB, XMLBeans, JiBX, XStream 구글링 중 =0= 비교 자료 획득 -0- 참고 :  http://www.javabeat.net/2011/03/introduction-to-spring-oxm/

jsonp와 ajax 호출 방법

AJAX 호출 방법 :  http://net.tutsplus.com/tutorials/javascript-ajax/5-ways-to-make-ajax-calls-with-jquery/ JSONP는 CrossDomain 문제를 해결하기 위한 기법 사용법 한글 문서 :  http://www.codejs.co.kr/jquery-jsonp/ 영문 문서 :  http://remysharp.com/2007/10/08/what-is-jsonp/

eclipse Web 개발 환경

eclipse Web 개발 관련 Plugin http://blog.naver.com/PostView.nhn?blogId=akj61300&logNo=80133089067 eclipse jquery Plugin http://warmz.tistory.com/756

RMI

참고 : 소설같은 자바2 RMI(Remote Method Invocation) 네트워크의 신뢰성과 안정성 보장 원격지에 존재하는 객체의 메서드 호출 원격지에 존재하는 메서드의 매개변수 및 반환값은 직렬화 기법으로 처리 RPC(Remote Procedure Call)의 종류  JAVA - RMI MS - DCOM * - CORBA JavaEE 참고 :  https://ko.wikipedia.org/wiki/%EC%9E%90%EB%B0%94_%ED%94%8C%EB%9E%AB%ED%8F%BC,_%EC%97%94%ED%84%B0%ED%94%84%EB%9D%BC%EC%9D%B4%EC%A6%88_%EC%97%90%EB%94%94%EC%85%98#.EC.9D.B8.EC.A6.9D.EB.90.9C_.EC.9B.B9_.EC.95.A0.ED.94.8C.EB.A6.AC.EC.BC.80.EC.9D.B4.EC.85.98_.EC.84.9C.EB.B2.84 웹로직 참고 :  http://blog.naver.com/PostView.nhn?blogId=xxsaintxx&logNo=20156347690 RMI Registry 원격 객체를 관리하고 서비스하는 원격 객체 컨테이너 RMI Registry에 Binding은 원격 객체 등록하는 과정이고 등록시 객체를 식별할 수 있는 식별자와 함께 등록해야 한다. 호출 순서 클라이언트 프로그램에서 RMI Registry에 등록되어 있는 원격 객체를 검색한다.(룩업이라고 함) 룩업은 바인딩 과정에서 바인딩시 등록한 식별자를 이용한다. 록업을 하면 RMI Register는 원격 참조 객체를 클라이언트로 전송한다. 클라이언트는 원격 참조 객체(가짜객체)를 이용하여 원격 객첼의 메서드를 호출한다. 서버 작업 실제 업무를 수행할 메서드를 포함하고 있는 원격 객체 생성 RMI Registry에 원격 객체 등록 클라이언트가 서버에 요청하면 원격...

Spring Quartz

수행 순서 Trigger 가 JobInstance를 이용하여 Job를 수행 기본 용어 Job - 실행 해야할 작업 Trigger - Job를 실행 시키기 위한 조건 (Trigger : Job = N : 1)  Spring Framework에서 2개의 TriggerBean 제공 SimpleTriggerBean CronTriggerBean TriggerListener : Trigger가 수행 하기 이전에 수행하는 콜백 JobDetail - Job Instance 에 대한 상세 속성을 가진 객체 Spring Framework에서 JobDetailBean 지원 MethodInvokingJobDetailFactoryBean : Job Api에 종속적이지 않게 POJO형태의 Job 클래스를 작성하여 Scheduler에 따라 해당 클래스의 메소드를 호출할 수 있도록 해주는 역할 Scheduler - SchedulerFactory에 의해 생성 되며,  JobDetail들과 Trigger 관리 참조 :  http://kamsi76.egloos.com/470846

무얼 만들까?

내가 관심있는것 그리고 내게 필요한것 또는 누군가에게 도움이 될만한 것 gmail를 대상으로 날짜 별 또는 보낸 사람 별 분류해주는 메일 클라이언트   - 필요한 것    1. gmail 접근 권한 (메일 전체를 크롤링 할 수 있나?)    참고 :  https://developers.google.com/gmail/xoauth2_protocol#using_oauth_20    참고 :  http://blog.naver.com/PostView.nhn?blogId=olovesun&logNo=10119281695    2. html5    3. spring + mybatis + maven (multi module)    4. git 사용 방법

forward 와 redirect의 차이

forward 는 서버 내에서 이동할 페이지 호출 redirect 는 서버에서 클라이언트에게 이동할 페이지 전달, 클라이언트에서 페이지 호출 참고 :  http://xnom.tistory.com/45

자료구조 - 퀵 소트, 퀵 서치

퀵소트 개념 : 임의의 값(pivot) 보다 큰값은 오른쪽 과 작은값은 왼쪽에 배치, 이후 pivot 값을 제외한 양쪽 리스트를 재귀호출로 수행 퀵서치 개념 : 1. 정렬된 리스트에서 중간에 위치한 값과 찾으려는 값 비교, 2. 크면 우측 리스트만 1번 수행 3. 작으면 좌측만 리스트만 1번 수행 구현 https://docs.google.com/file/d/0B8GnLwsufqFhaEFzcU12ZlUwcjA/edit?usp=sharing

자료구조 - 이진트리

이진 트리 구현 시 주의 사항  - 큰값은 오른쪽, 작은값은 왼쪽, 같은 값은 일관성있게 왼쪽 혹은 오른쪽  - 트리 노드 삭제 방법     * 지우려는 대상의            1. 자식 노드가 없는 경우            - 대상 부모 노드에서 대상 노드를 null 처리            2. 자식 노드가 하나인 경우            - 대상 부모 노드에서 대상 노드를 대상 노드의 하나인 자식 노드로 교체            3. 자식 노드가 두개인 경우            - 대상 노드의 오른쪽 노드 자식 중 가장 작은 노드 선택            - 가장 작은 노드의 부모 노드의 왼쪽 노드를 가장 작은 노드의 오른쪽 노드로 변경            - 대상 노드 값을 가장 작은 노드 값으로 교체           * 노드 삭제를 제외하곤 쉽군... 구현: https://docs.google.com/file/d/0B8GnLwsufqFhSy14SUVEYlpRQnc/edit?usp=sharing