⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 testejbbean.java

📁 大名顶顶的JDON的测试程序
💻 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 + -