Java 数据对象(JDO)介绍(三)


<script language=javascript>showbanner(6,6);</script> <script type=text/javascript>google_ad_client ="pub-2141342037947367";google_ad_width = 120;google_ad_height =240;google_ad_format = "120x240_as";google_ad_channel="3662469727";google_color_border = "CCCCCC";google_color_bg ="FFFFFF";google_color_link = "000000";google_color_url ="666666";google_color_text = "333333";</script> <script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type=text/javascript></script>
试例
简介
下面的例子示范了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.";
        }
    }    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值