有状态会话bean(二)
name="jdbc/ds", type=DataSource.class, mappedName="jdbc/sfsbLifecycleExample")
public class OrderBrowserBean implements OrderBrowser {
DataSource ds;
Connection conn;
@PostConstruct
public void init() {
// acquire the data source
try {
ds = (DataSource)
new InitialContext().lookup("java:comp/env/jdbc/ds");
} catch (Exception e) {
throw new EJBException(e);
}
acquireConnection();
}
@PrePassivate
public void passivate() {
releaseConnection();
}
@PostActivate
public void activate() {
acquireConnection();
}
@PreDestroy
public void shutdown() {
releaseConnection();
}
private void acquireConnection() {
try {
conn = ds.getConnection();
} catch (SQLException e) {
throw new EJBException(e);
}
}
private void releaseConnection() {
try {
conn.close();
} catch (SQLException e) {
}
conn = null;
}
public Collection
listOrders() {
// ...
return new ArrayList
(); } }