Egloos 728x90

구글 애널리틱스


2015/07/30 21:40

XPath - 상대 경로 탐색 ▷ Java 복습



  index.xml 파일에 미리 트리 구조로 설정값을 넣어두고, 해당 파일을 읽어 JTree로 표현하고자 했습니다.
xpath-relative.png


  index.xml의 내용을 읽어 tree로 표현한 화면.

  핵심은 복수의 ring 요소를 품은 rings 요소는, 다시 rings 요소를 가질 수 있다는 점입니다. 즉, ring 요소는 자식으로 복수의 ring을 가질 수 있습니다. 또한 이는 계속해서 반복될 수도 있습니다.

  그래서 ring은 buildRingList라는 메서드를 호출해서 구성토록 하고, 만약 이 ring이 또다시 ring들을 가지고 있다면, 이 각각의 ring들마다 buildRingList 메서드를 호출해서 구성하도록 하면 간단하게 구현할 수 있을 것 같았습니다. 반복작업도 줄이고, 몇 단계로 깊게 ring들이 중첩되어 가지고 있어도 buildRingList 메서드가 알아서 처리해주도록 말이죠.

  문제는 그러려면 ring마다 단위로 끊어서 인식하고, 해당 범위 내의 처리만 하고, 그 이하는 또다시 그 범위 내에서만 처리하도록 할 필요가 있었습니다.(간단한 기능인데 말로 설명하기가 힘드네요...)

  그런데 제가 가지고 있는 XPath 표현식 정보 중에는 루트부터의 절대경로나 전체에서 탐색하기 등은 나와도, 상대 경로 정보는 나와있질 않더군요. 그래서 상대 경로 탐색법을 찾아봤습니다. 생각보다 잘 안 나오긴 했지만, 그래도 결국 찾아내어 완성했습니다.

이글루스에서는 코드가 이쁘게 나오질 않아서 티스토리 링크로 대체합니다. 보시려면 여길 클릭해주세요.

덧글

댓글 입력 영역

애드센스336x280

알라딘TTB-Egloos(하단-일반)



이 이글루를 링크한 사람 (블랙)

36