old_datafetcher.java

来自「EOmodeler 读取数据库的方法」· Java 代码 · 共 115 行

JAVA
115
字号
package test.eof;



import java.util.List;

import com.webobjects.eoaccess.EODatabaseContext;
import com.webobjects.eoaccess.EOModel;
import com.webobjects.eoaccess.EOModelGroup;
import com.webobjects.eoaccess.EOUtilities;
import com.webobjects.eocontrol.EOEditingContext;
import com.webobjects.eocontrol.EOObjectStoreCoordinator;
import com.webobjects.foundation.NSArray;
import com.webobjects.foundation.NSMutableDictionary;

/**
 * @author Huang Ke
 * @version $Id: OLD_DataFetcher.java,v 1.1 2007/12/14 11:36:59 lzh Exp $
 */

public class OLD_DataFetcher {
	String EOMODEL_Name = "JetBlue.eomodeld";
	String USER_NAME = "root";
	String PASSWORD = "123";
	String sql;
	EOModel model;
	EOObjectStoreCoordinator osc;
	EOModelGroup mp;
	EOEditingContext ec;
	NSMutableDictionary overrides;
	NSArray allAirplaneInfo = new NSArray();
	
	
	public OLD_DataFetcher(){
		model = new EOModel(EOMODEL_Name);
		overrides = new NSMutableDictionary();
		overrides.takeValueForKey(USER_NAME, "username");
		overrides.takeValueForKey(PASSWORD, "password");
		
		osc = new EOObjectStoreCoordinator();
		mp = new EOModelGroup();
		mp.addModel(model);
		EOModelGroup.setModelGroupForObjectStoreCoordinator(osc, mp);
		
		ec = new EOEditingContext(osc);
		EODatabaseContext.forceConnectionWithModel(model, overrides, ec);
		allAirplaneInfo=this.getAirplanes();
	}
	
	public NSArray getAirplanes() {
		NSArray resultSet = new NSArray();
		try {
			sql ="select * from airplane order by airplane_id";
			resultSet = EOUtilities.rawRowsForSQL(ec, model.name(),sql, null);
		} catch (Exception e) {
			System.out.println(e);
		}
		return resultSet;
	}
	
	public int getAirplanesNum() {
		return allAirplaneInfo.count();
	}
	
	public String getAirplaneID(int pointer) {
		NSMutableDictionary result=(NSMutableDictionary)allAirplaneInfo.objectAtIndex(pointer);
		return result.valueForKey("ID").toString();
	}
	
	public double getAirplaneLon(int getAirplaneID) throws Exception{
		double AirplaneLon=1000;//1000 implies a mistake
		for(int i=0; i<allAirplaneInfo.count();i++){
			NSMutableDictionary result=(NSMutableDictionary)allAirplaneInfo.objectAtIndex(i);
			if(result.valueForKey("AIRPLANE_ID").equals(getAirplaneID)){
				AirplaneLon = Double.parseDouble(result.valueForKey("LONGITUDE").toString());
			}
		}
		return AirplaneLon;
	}
	
	public double getAirplaneLat(int getAirplaneID) throws Exception{
		double AirplaneLat=1000;//1000 implies a mistake
		for(int i=0; i<allAirplaneInfo.count();i++){
			NSMutableDictionary result=(NSMutableDictionary)allAirplaneInfo.objectAtIndex(i);
			if(result.valueForKey("AIRPLANE_ID").equals(getAirplaneID)){
				AirplaneLat = Double.parseDouble(result.valueForKey("LATITUDE").toString());
			}
		}
		return AirplaneLat;
	}
	
	public int getAirplaneStatus(int getAirplaneID) throws Exception{
		int status=-1;//-1 implies a mistake
		for(int i=0; i<allAirplaneInfo.count();i++){
			NSMutableDictionary result=(NSMutableDictionary)allAirplaneInfo.objectAtIndex(i);
			if(result.valueForKey("AIRPLANE_ID").equals(getAirplaneID)){
				status = Integer.parseInt(result.valueForKey("STATUS").toString());
			}
		}
		return status;
	}
	
	public int getAirplaneModel(int getAirplaneID) throws Exception{
		int model=-1;//-1 implies a mistake
		for(int i=0; i<allAirplaneInfo.count();i++){
			NSMutableDictionary result=(NSMutableDictionary)allAirplaneInfo.objectAtIndex(i);
			if(result.valueForKey("AIRPLANE_ID").equals(getAirplaneID)){
				model = Integer.parseInt(result.valueForKey("MODEL").toString());
			}
		}
		return model;
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?