简介
下面的例子示范了jdo的基础应用。代码示范了如何向数据库添加数据和取回数据。所有的代码使用的都是solarmetric's kodo jdo实现。包括创建数据库的机制,使域对象类扩展persistencecapable接口的增强和厂商特定的persistencemanagerfactory实现使用的都是kodo jdo实现。其他的部分使用的是标准的jdo实现。
域对象
the samples will work with a small set of classes, which represent a fleet of vehicle objects. the two specific types of vehicles defined are bicycle and motorvehicle. motorvehicle objects have an engine attribute.
例子是用了一个很小的类,这个类描述了一个vehicle(交通工具) 对象的fleet(车队)。vehicle 定义了两个特定的对象bicycle 和motorvehicle 。motorvehicle对象有一个engine 属性。
域对象源代码
/**
* fleet.java
*/
package com.ociweb.jdodemo;
import java.util.iterator;
import java.util.list;
import java.util.vector;
public class fleet {
private list vehicles = new vector();
public void addvehicle(vehicle vehicle) {
vehicles.add(vehicle);
}
public iterator getvehicles() {
return vehicles.iterator();
}
public string tostring() {
stringbuffer buffer = new stringbuffer("fleet:\n");
iterator iter = getvehicles();
while (iter.hasnext()) {
buffer.append("\t" + iter.next() + "\n");
}
return buffer.tostring();
}
}
/**
* vehicle.java
*/
package com.ociweb.jdodemo;
public class vehicle {
private int numberofwheels;
public vehicle(int numberofwheels) {
this.numberofwheels = numberofwheels;
}
public int getnumberofwheels() {
return numberofwheels;
}
}
/**
* bicycle.java
*/
package com.ociweb.jdodemo;
public class bicycle extends vehicle {
private string model;
public bicycle(string model) {
super(2);
this.model = model;
}
public string tostring() {
return "bike: model " + model;
}
}
/**
* motorvehicle.java
*/
package com.ociweb.jdodemo;
public class motorvehicle extends vehicle {
private engine engine;
public motorvehicle(int numberofwheels, engine engine) {
super(numberofwheels);
this.engine = engine;
}
public string tostring() {
return "motorvehicle with " + getnumberofwheels()
+ " wheels. " + engine;
}
}
/**
* engine.java
*/
package com.ociweb.jdodemo;
public class engine {
private int numberofcylinders;
public engine(int numberofcylinders) {
this.numberofcylinders = numberofcylinders;
}
public int getnumberofcylinders() {
return numberofcylinders;
}
public string tostring() {
return numberofcylinders + " cylinder engine.";
}
}
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器