【Java开源代码栏目提醒】:网学会员--在 Java开源代码编辑为广大网友搜集整理了:ClientDataModule.java绩等信息,祝愿广大网友取得需要的信息,参考学习。
/*
* Copyright (c) 1996-2001 Borland Software Corporation. All Rights Reserved.
*
* This SOURCE CODE FILE, which has been provided by Borland Software as part
* of an Borland Software product for use ONLY by licensed users of the product,
* includes CONFIDENTIAL and PROPRIETARY information of Borland Software.
*
* USE OF THIS SOFTWARE IS GOVERNED BY THE TERMS AND CONDITIONS
* OF THE LICENSE STATEMENT AND LIMITED WARRANTY FURNISHED WITH
* THE PRODUCT.
*
* IN PARTICULAR, YOU WILL INDEMNIFY AND HOLD BORLAND SOFTWARE, ITS
* RELATED COMPANIES AND ITS SUPPLIERS, HARMLESS FROM AND AGAINST ANY
* CLAIMS OR LIABILITIES ARISING OUT OF THE USE, REPRODUCTION, OR
* DISTRIBUTION OF YOUR PROGRAMS, INCLUDING ANY CLAIMS OR LIABILITIES
* ARISING OUT OF OR RESULTING FROM THE USE, MODIFICATION, OR
* DISTRIBUTION OF PROGRAMS OR FILES CREATED FROM, BASED ON, AND/OR
* DERIVED FROM THIS SOURCE CODE FILE.
*/
//------------------------------------------------------------------------------
// Copyright (c) 1996-2001 Borland Software Corporation. All Rights Reserved.
//------------------------------------------------------------------------------
package com.borland.samples.dm;
import com.borland.dx.dataset.*;
import com.borland.dx.ejb.*;
import com.borland.samples.ejb.*;
public class ClientDataModule implements DataModule {
private static ClientDataModule myDM;
SessionBeanConnection sessionBeanConnection = new SessionBeanConnection();
EjbClientDataSet inventoryDataSet = new EjbClientDataSet();
EjbClientDataSet shoppingCartDataSet = new EjbClientDataSet();
EjbClientDataSet userDataSet = new EjbClientDataSet();
ParameterRow inventoryParameter = new ParameterRow();
ParameterRow userIdParameter = new ParameterRow();
Column searchItemColumn = new Column();
Column priceColumn = new Column();
Column ejbPrimaryKeyColumn = new Column();
public ClientDataModule() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
sessionBeanConnection.setJndiName("");
priceColumn.setColumnName("Price");
priceColumn.setDataType(com.borland.dx.dataset.Variant.FLOAT);
priceColumn.setDisplayMask("###,###.##");
priceColumn.setServerColumnName("Price");
priceColumn.setSqlType(0);
searchItemColumn.setColumnName("searchterm");
searchItemColumn.setDataType(com.borland.dx.dataset.Variant.STRING);
searchItemColumn.setSqlType(0);
ejbPrimaryKeyColumn.setColumnName("ejbPrimaryKey");
ejbPrimaryKeyColumn.setDataType(Variant.OBJECT);
ejbPrimaryKeyColumn.setHidden(true); //Using an EntityBeanProvider, this column is hidden, but not with a QueryProvider
inventoryDataSet.setSessionBeanConnection(sessionBeanConnection);
shoppingCartDataSet.setSessionBeanConnection(sessionBeanConnection);
userDataSet.setSessionBeanConnection(sessionBeanConnection);
inventoryDataSet.setExecuteOnOpen(false);
shoppingCartDataSet.setExecuteOnOpen(false);
userDataSet.setExecuteOnOpen(false);
shoppingCartDataSet.setMethodName("ShoppingCart");
inventoryDataSet.setMethodName("Inventory");
userDataSet.setMethodName("User");
inventoryParameter.setColumns(new Column[] {searchItemColumn});
userIdParameter.setColumns(new Column [] { new Column("USERID", "USERID", Variant.INT)});
inventoryDataSet.setColumns(new Column[] {priceColumn, ejbPrimaryKeyColumn});
}
public static ClientDataModule getDataModule() {
if (myDM == null) {
myDM = new ClientDataModule();
}
return myDM;
}
public com.borland.dx.ejb.SessionBeanConnection getSessionBeanConnection() {
//在com.borland.samples.web.SessionBean.java中有setSessionBeanConnection().getSessionBeanRemote()方法设置
//sessionBeanRemote
return sessionBeanConnection;
}
public com.borland.dx.ejb.EjbClientDataSet getInventoryDataSet() {
return inventoryDataSet;
}
public com.borland.dx.ejb.EjbClientDataSet getShoppingCartDataSet() {
return shoppingCartDataSet;
}
public void provideAllData(String bookSearchString, Integer userId) {
try {
if ( !shoppingCartDataSet.isOpen() ) {
shoppingCartDataSet.open();
}
else {
shoppingCartDataSet.empty();
}
if ( !inventoryDataSet.isOpen() ) {
inventoryDataSet.open();
}
else {
inventoryDataSet.empty();
}
if ( !userDataSet.isOpen() ) {
userDataSet.open();
}
else {
userDataSet.empty();
}
//与cart这个session bean关联起来,而cart 是serverdatamodulebean的包装头
//在com.borland.samples.web.SessionBean.java中有setSessionBeanConnection().getSessionBeanRemote()方法设置
//sessionBeanRemote
Cart cart = (Cart) sessionBeanConnection.getSessionBeanRemote();
RowData [] paramArray = new RowData[3];
int id = userId.intValue();
userIdParameter.setInt(0, id);
paramArray[2] = new RowData();
paramArray[2].load(userIdParameter);
if ( bookSearchString != null && bookSearchString.length() > 0 ) {
inventoryParameter.setString(0, bookSearchString);
RowData rowData = new RowData();
rowData.load(inventoryParameter);
paramArray[1] = rowData;
}
DataSetData [] dataSetDataArray = cart.provideAllData(paramArray, null);
//通过cart.provideAllData取得所有的dataset
dataSetDataArray[0].loadDataSet(shoppingCartDataSet);
dataSetDataArray[1].loadDataSet(inventoryDataSet);
dataSetDataArray[2].loadDataSet(userDataSet);
}
catch (Exception ex) {
ex.printStackTrace();
}
}
public com.borland.dx.dataset.ParameterRow getInventoryParameter() {
return inventoryParameter;
}
public EjbClientDataSet getUserDataSet() {
return userDataSet;
}
}
上一篇:
ClientDAO.java
下一篇:
那些令你为之触动的好句子,感慨万分