📄 salesfacadebean.java
字号:
package com.xyz.ejb;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import javax.ejb.EJBException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import salesdb.*;
import com.xyz.data.ItemVO;
import com.xyz.data.LocationVO;
/**
* Bean implementation class for Enterprise Bean: SalesFacade
*/
public class SalesFacadeBean implements javax.ejb.SessionBean {
private javax.ejb.SessionContext mySessionCtx;
/**
* getSessionContext
*/
public javax.ejb.SessionContext getSessionContext() {
return mySessionCtx;
}
/**
* setSessionContext
*/
public void setSessionContext(javax.ejb.SessionContext ctx) {
mySessionCtx = ctx;
}
/**
* ejbCreate
*/
public void ejbCreate() throws javax.ejb.CreateException {
}
/**
* ejbActivate
*/
public void ejbActivate() {
}
/**
* ejbPassivate
*/
public void ejbPassivate() {
}
/**
* ejbRemove
*/
public void ejbRemove() {
}
/**
* echo a string
* @param aString java.lang.String
* @return java.lang.String
*/
public String echo(String aString) {
return "SalesFacade: " + aString;
}
/**
* Return a LocationVO, given a ZipCode
* @return com.xyz.data.LocationVO, a location
*/
public LocationVO getLocation(String zipCode) {
final String loRef = "java:comp/env/ejb/Location";
LocationVO locationDO = null;
try {
Context jndiContext = new InitialContext();
LocationLocalHome localHome =
(LocationLocalHome) jndiContext.lookup(loRef);
LocationLocal locationLocal =
localHome.findByPrimaryKey(new LocationKey(zipCode));
locationDO =
new LocationVO(
locationLocal.getCity(),
locationLocal.getState(),
zipCode,
locationLocal.getAreacode());
} catch (javax.naming.NamingException ex) {
throw new EJBException(ex);
} catch (javax.ejb.FinderException ex) {
locationDO = new LocationVO("", "", "", "");
}
return locationDO;
}
/**
* Return array of Item data objects
* @return com.xyz.data.LocationVO[], an array of all locations
*/
public ItemVO[] getAllItems() {
final String loRef = "java:comp/env/ejb/Item";
ItemVO[] data = null;
try {
Context jndiContext = new InitialContext();
ItemLocalHome itemLocalHome =
(ItemLocalHome) jndiContext.lookup(loRef);
Collection items = itemLocalHome.findAll();
data = new ItemVO[items.size()];
int i = 0;
Iterator it = items.iterator();
while (it.hasNext()) {
ItemLocal item = (ItemLocal) it.next();
long key =
((ItemKey) item.getPrimaryKey()).getItemid().longValue();
data[i++] = new ItemVO(key, item.getName());
}
} catch (javax.naming.NamingException ex) {
throw new EJBException(ex);
} catch (javax.ejb.FinderException ex) {
data = new ItemVO[0];
}
return data;
}
/**
* Create Purchase objects from list of items for a
* given Zip Code
* @return boolean, true if and only if successful
*/
public boolean makePurchase(String zipCode, Long[] items) {
final String pcRef = "java:comp/env/ejb/Purchase";
final String loRef = "java:comp/env/ejb/Location";
final String itRef = "java:comp/env/ejb/Item";
long key = System.currentTimeMillis();
try {
Context jndiContext = new InitialContext();
// Find local homes
PurchaseLocalHome purchaseLocalHome =
(PurchaseLocalHome) jndiContext.lookup(pcRef);
LocationLocalHome locationLocalHome =
(LocationLocalHome) jndiContext.lookup(loRef);
ItemLocalHome itemLocalHome =
(ItemLocalHome) jndiContext.lookup(itRef);
// Get loop-invariant timestamp and location
String timeStamp = new java.util.Date().toString();
LocationLocal locationLocal =
locationLocalHome.findByPrimaryKey(new LocationKey(zipCode));
// Create Purchases
for (int i = 0; i < items.length; i++) {
ItemLocal itemLocal =
itemLocalHome.findByPrimaryKey(new ItemKey(items[i]));
// Create new purchase
PurchaseLocal purchaseLocal =
purchaseLocalHome.create(new Long(++key));
// Set location
purchaseLocal.setLocationfk(locationLocal);
// Set item
purchaseLocal.setItemfk(itemLocal);
}
} catch (javax.naming.NamingException ex) {
throw new EJBException(ex);
} catch (javax.ejb.FinderException ex) {
return false;
} catch (javax.ejb.CreateException ex) {
throw new EJBException(ex);
}
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -