WEB开发网
开发学院软件开发Java 面向 Java 开发人员的 db4o 指南: db4o 中的数据库... 阅读

面向 Java 开发人员的 db4o 指南: db4o 中的数据库重构

 2010-04-01 00:00:00 来源:WEB开发网   
核心提示: 清单 3. Howyadoin'?(你好吗?)packagecom.tedneward.model;publicenumMood{HAPPY,CONTENT,BLAH,CRANKY,DEPRESSED,PSYCHOTIC,WRITING_AN_ARTICLE}第二步,我需要更改 Pers

清单 3. Howyadoin'?(你好吗?)

        package com.tedneward.model; 
 
public enum Mood 
{ 
  HAPPY, CONTENT, BLAH, CRANKY, DEPRESSED, PSYCHOTIC, WRITING_AN_ARTICLE 
} 

第二步,我需要更改 Person 代码,添加一个字段和一些用于跟踪情绪的属性方法,如清单 4 所示:

清单 4. No, howYOUdoin'?(不,你好吗?)

        package com.tedneward.model; 
 
// Person v2 
public class Person 
{ 
  // ... as before, with appropriate modifications to public constructor and 
  // toString() method 
   
  public Mood getMood() { return mood; } 
  public void setMood(Mood value) { mood = value; } 
 
  private Mood mood; 
} 

检查 db4o

在做其它事情之前,我们先来看看 db4o 对查找数据库中所有 Brian 的查询如何作出响应。换句话说,当数据库中没有存储 Mood 实例时,如果在数据库上运行一个基于已有的 Person 的查询,db4o 将如何作出响应(见清单 5)?

清单 5. 每个人都还好吗?

        import com.db4o.*; 
import com.tedneward.model.*; 
 
// Version 2 
public class ReadV2 
{ 
  public static void main(String[] args) 
    throws Exception 
  { 
    // Note the absence of the File.delete() call 
     
    ObjectContainer db = null; 
    try 
    { 
      db = Db4o.openFile("persons.data"); 
 
      // Find all the Brians 
      ObjectSet brians = db.get(new Person("Brian", null, 0, null)); 
      while (brians.hasNext()) 
        System.out.println(brians.next());       
    } 
    finally 
    { 
      if (db != null) 
        db.close(); 
    } 
  } 
} 

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:面向 Java 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接