2014-11-27 54 views
-1
import java.io.File; 
import com.db4o.Db4o; 
import com.db4o.Db4oEmbedded; 
import com.db4o.ObjectContainer; 
import com.db4o.ObjectSet; 
import com.db4o.query.Query; 

public class Student { 

private String name; 

public AlumnoBDOO(String name){ 
    this.name = name; 
} 

public String getName() { 
    return name; 
} 

public void setName(String name) { 
    this.name = name; 
} 

public static void main(String[] args) { 
    ObjectContainer bd = Db4oEmbedded.openFile("students.db4o"); 
    try { 

     Student s1 = new Student("Carl"); 
     bd.store(s1) 
     showStudents(bd); 

     } catch (Exception e) { 
      e.printStackTrace(); 
     } finally { 
      bd.close(); 
     } 
    } 

public static void showResult(ObjectSet rs){ 
    System.out.println("Retrieved "+rs.size()+" objects"); 
    while(rs.hasNext()){ 
     System.out.println(rs.next()); 
    } 
} 

public static void showStudents(ObjectContainer bd){ 
    Query query = bd.query(); 
    query.constrain(Student.class); 
    query.descend("name"); 
    ObjectSet rs = query.execute(); 
    showResult(rs); 
} 

} 

난 그냥 단순히 db4o는 데이터베이스에 학생을 저장할하지만 난 그들 모두를 검색 할 때 다음과 같이 출력 : 내가 사용db4o는 - 이상한 문자 때 검색 개체

[email protected] 

Eclipse JUNO와 db40 v.8.0은 이미 외부 jar로 추가했습니다. "Carl"대신 왜 이상한 문자가 나옵니까?

답변

1

이것은 실현되지 않았지만 toString() 메서드의 기본 구현입니다. 의미있는 정보를 얻으려면 Student 클래스에서이 메서드를 재정의해야합니다.

+0

오 감사합니다. 나는 이미 toString 메소드를 시도했지만 직접 인쇄 라인에서 메소드로 구현하지 않았다. :) – seRgiOOOOOO