2010-12-13 2 views
4

Java SE 응용 프로그램이 있으며 데이터베이스를 사용합니다. 현재 XML 파일을 사용하여 데이터를 저장하고 있지만 나중에 사용하면 오류가 발생할 수 있습니다.Java SE 응용 프로그램과 함께 배포 할 쉬운 데이터베이스

그래서 DB와 같은 Postgree/MySQL을 사용하는 것이 좋습니다. 실제 데이터베이스. 그러나 문제는 상용 응용 프로그램이며 Windows에서 실행되며 2 번의 클릭으로 설치해야합니다. 필자는 응용 프로그램과 함께 데이터베이스를 설치 한 다음 스크립트를 실행하여 테이블을 작성하는 아이디어를 좋아하지 않습니다.

Java API로 사용할 수있는 데이터베이스가 있습니까? 아니면 XML을 계속 사용해야합니까? XML 파일에 대한 모든 액세스를 동기화합니다. 무엇이 최선의 선택입니까?

+2

가능한 중복 (http://stackoverflow.com/questions/57102/embedded-java-databases) –

+0

확인이 사용 예, http://debuggingisfun.blogspot.com/2012/05/ 빠르고 쉽게 데이터베이스 설치 -html. – ethan

답변

12

하나 :

  • H2
  • 그들은 경량
  • Derby
    • HSQLDB
    • 은 매우 작은 공간을 차지하여 응용 프로그램에서 문제없이 포함 할 수 있습니다.

      이들은 Java로 작성되었으며 각각 간단한 jar 파일이므로 전개상의 어려움은 최소한으로 유지됩니다.

      당신은 MySQL과 PostgreSQL을 언급했습니다. 시도하지는 않았지만, H2는 언급 한 것들을 포함하여 다양한 대중 데이터베이스에 대해 여러 개의 compatibility modes을 제공합니다.

    +0

    Derby는 http://debuggingisfun.blogspot.com/2012/05/quick-and-easy-setup-of-database-in.html에 나와 있습니다. – ethan

    4

    H2 Database

    이 설치없이 클릭하여 응용 프로그램에 포함 할 수 있으며 JDBC 대부분으로 ORMs을 지원합니다. 다음 임베디드 데이터베이스

    3

    간단한 SQLite 데이터베이스를 저장소로 사용하는 것이 좋습니다. 파일 시스템에있는 하나의 파일입니다. 서버를 설치할 필요가 없습니다. 소개를 위해 다음 글타래를 확인하십시오. Java and SQLite 체크 아웃 할 수있는 또 다른 데이터베이스는 HSQLDB (이 스레드 내부의 다른 응답 내부 링크)입니다. 하나의 파일을 기반으로 Java로 작성된 관계형 데이터베이스 엔진입니다.

    1

    이전에 데이터를 XML에 저장 한 경험을 토대로 필자는 XML에 대한 전체 포럼 시스템을 작성했으며 RSS 파서 및 작성자를 기반으로합니다. XML 파일이 매우 커져서 응용 프로그램에 자주 요청 시간이 초과되었습니다.

    대신 데이터가 파일에 저장되지만 더 관리되고 SELECT * FROM table과 같은 선언문을 허용하는 SQLite와 같은 것을 사용할 수 있습니다. [임베디드 자바 데이터베이스]의

    관련 문제