📄 testejbbean.java
字号:
/**
* Copyright 2005 Jdon.com
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.jdon.framework.test.ejb;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.ejb.CreateException;
import com.jdon.controller.events.EventModel;
import org.apache.log4j.Logger;
import com.jdon.framework.test.model.UserTest;
import com.jdon.framework.test.Constants;
import java.util.HashMap;
import java.util.Map;
import com.jdon.controller.model.PageIterator;
import com.jdon.framework.test.dao.JdbcDAO;
import java.util.Collection;
public class TestEJBBean implements SessionBean {
private final static Logger logger = Logger.getLogger(TestEJBBean.class);
SessionContext sessionContext;
private Map vdb ;
private JdbcDAO jdbcDao;
private boolean testDB;
public void ejbCreate() throws CreateException {
jdbcDao = new JdbcDAO();
vdb = new HashMap();
testDB = false;
}
public void createUser(EventModel em) {
UserTest user = (UserTest) em.getModel();
try {
vdb.put(user.getUserId(), user);
logger.debug(" create ok! size :" + vdb.size());
logger.debug(" userId:" + user.getUserId());
logger.debug(" userName:" + user.getName());
clearCache();
} catch (Exception ex) {
logger.error(ex);
em.setErrors(Constants.USER_SAVE_ERROR);
}
}
public void updateUser(EventModel em) {
UserTest user = (UserTest) em.getModel();
try {
vdb.put(user.getUserId(), user);
logger.debug(" update ok!");
logger.debug(" userId:" + user.getUserId());
logger.debug(" userName:" + user.getName());
clearCache();
} catch (Exception ex) {
logger.error(ex);
em.setErrors(Constants.USER_SAVE_ERROR);
}
}
public void deleteUser(EventModel em) {
UserTest user = (UserTest) em.getModel();
try {
vdb.remove(user.getUserId());
clearCache();
logger.debug(" delete ok!");
} catch (Exception ex) {
logger.error(ex);
em.setErrors(Constants.USER_SAVE_ERROR);
}
}
public UserTest getUser(String userId){
logger.debug(" get User from DAO + JDBC");
UserTest user = (UserTest)vdb.get(userId);
logger.debug(" userId:" + user.getUserId());
logger.debug(" userName:" + user.getName());
return user;
}
private void clearCache() throws Exception {
// jdbcDao.clearCacheOfItem();
}
public PageIterator getAllUsers(int start, int count) {
PageIterator pageIterator = new PageIterator(PageIterator.EMPTY, 0, false);
try {
logger.debug(" get Allusers size:" + vdb.size());
if (!testDB)
pageIterator = getAllUsersTest(start, count);
else
pageIterator = jdbcDao.getUsers(start, count);
} catch (Exception ex) {
logger.error(ex);
}
return pageIterator;
}
private PageIterator getAllUsersTest(int start, int count) {
PageIterator pageIterator = new PageIterator(PageIterator.EMPTY, 0, false);
boolean nextPage = false;
try {
logger.debug(" get Allusers size:" + vdb.size() + " start="+ start);
int maxSize = vdb.size();
Collection items = vdb.keySet();
String[] itemsA = (String[]) items.toArray(new String[0]);
int offset = maxSize - start;
if (count > offset )
count = offset;
String[] results = new String[count];
int j = 0;
for(int i = start; i< count + start ;i ++){
results[j] = itemsA[i];
logger.debug(" i=" + i + " itemsA[i]" + itemsA[i]);
j++;
}
if (j < maxSize){
nextPage = true;
}
pageIterator = new PageIterator(maxSize, results, start, nextPage);
} catch (Exception ex) {
logger.error(ex);
}
return pageIterator;
}
public void ejbRemove() {
vdb.clear();
}
public void ejbActivate() {
}
public void ejbPassivate() {
}
public void setSessionContext(SessionContext sessionContext) {
this.sessionContext = sessionContext;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -