2010-03-18 3 views
1

상황에 우리의 응용 프로그램에서.NET 용 DataView/DataSet과 같은 것이 있습니까? 여기에서 일부 데이터를 스냅 샷하고 쿼리를 수행 할 수 있습니까?

, 우리 스냅 샷 슈퍼 사용자가 입력하는 쿼리를 사용하여 데이터베이스의 데이터, 그리고 우리는 XML을 사용하여 해당 스냅 숏에서 데이터를 저장합니다. .NET을 사용했다면 DataSet (+ DataTables)과 DataViews를 사용했을 것입니다. 그러나 저는 Java 세계에 있으며, 충동 선택은 XML을 사용하여 스냅 샷 된 데이터를 저장하는 것입니다 (프로젝트의이 단계에서 쉽게 변경할 수 있음). 질문 1

는 데이터 집합은 .NET을 위해 할 것 같은, 자바 플랫폼에 대한 첫 번째 구조를 만들 필요없이 데이터 스냅 샷을 할 수 있나요, 그것은에 대한 쿼리를 수행 할 수있는 것 나중에 그 데이터? 데이터베이스에 저장하거나 Apache Lucene을 사용하는 방법에 대해 생각했지만 두 방식 모두 데이터베이스 구조를 관리해야했습니다.

질문 2

세웠하면 다음과 같은 XML이 :

<data> 
<record> 
    <user>ravi</user> 
    <age>32</age> 
    <city>calgary</city> 
</record> 
<record> 
    <user>spiderman</user> 
    <age>68</age> 
    <city>new york</city> 
</record> 
</data> 

그리고, 해당 데이터에, 나는 다음과 같은 쿼리를 실행합니다 :

age > 50 or city = 'new york' 

그 결과를 연산은 쿼리의 조건과 일치하는 레코드 만 사용하여 원본 XML의 하위 집합이됩니다.

감사합니다.

답변

1

JDBC 사양의 일부인 RowSet이라는 조금 비슷한 점이 있습니다. 데이터를 가져 와서 나중에 조작하거나 심지어 업데이트 할 수있는 CacheRowSet에서 캐시 할 수 있습니다. FilteredRowSet이있는 것처럼 보이므로 원하는 데이터 만 표시하는보기를 만들 수 있습니다.

이 모양은 ADO.NET DataViewDataSet과 비교적 비슷합니다. RowSet은 Javaland에서 인기가 없습니다.

몇 포인터 :

+0

네, 온 그 인터페이스에 걸쳐 있지만 구체적인 구현을 찾지 못했습니다 ... –

+0

참조 구현에 대한 링크를 추가했습니다 – ewernli

+0

마지막 링크는 내 문제를 해결할 수 있습니다. 나는 그것을 시도 할 것이고 그 다음에 대답을 받아 들일 것이다. 뭔가있을 거라면 그냥 생각했다 ... 고마워! –