countersserviceimpl.java

来自「社区文章采用的是平板、树形自由选择的两种展示方式」· Java 代码 · 共 108 行

JAVA
108
字号
/* 
 * Created on 2007-1-30
 * Last modified on 2008-1-1
 * Powered by YeQiangWei.com
 */
package com.yeqiangwei.club.service.util.impl;

import java.util.List;

import com.yeqiangwei.cache.Cache;
import com.yeqiangwei.cache.CacheFactory;
import com.yeqiangwei.club.dao.CountersDAO;
import com.yeqiangwei.club.dao.DAOLocator;
import com.yeqiangwei.club.dao.DAOWrapper;

import org.apache.log4j.Logger;
import com.yeqiangwei.club.model.Counters;
import com.yeqiangwei.club.exception.ClubException;
import com.yeqiangwei.club.param.CounterParameter;
import com.yeqiangwei.club.service.util.CountersService;
import com.yeqiangwei.club.util.BeanUtils;
import com.yeqiangwei.club.util.MessageUtils;
import com.yeqiangwei.util.TypeChange;

public class CountersServiceImpl implements CountersService {
	
	private static final Logger logger = Logger.getLogger(CountersServiceImpl.class);
	
	private static Cache<Counters> CACHE = CacheFactory.<Counters>creator(); 
	
	private static CountersDAO DAO = DAOWrapper.<CountersDAO>getDAO(DAOLocator.COUNTERS);

	public Counters findById(int id) {
		if(id>0){
			Counters item = CACHE.get("Counters_"+id);
			if(item==null){
				item = DAO.findById(id);
				CACHE.put("Counters_"+id,item);
			}
			return item;
		}else{
			return null;
		}
	}

	public void createOrUpdate(Counters item) throws ClubException {
		if(item.getCountersId()>0){
			this.update(item);
		}else{
			this.create(item);
		}
	}

	public void create(Counters item) throws ClubException {
		if(item!=null){
			DAO.create(item);
			CACHE.put("Counters_"+item.getCountersId(),item);
		}
	}

	public void update(Counters model) throws ClubException {
		Counters counters = DAO.findById(model.getCountersId());
		BeanUtils.copyProperties(counters, model);
		DAO.update(counters);
		CACHE.update("Counters_"+model.getCountersId(),model);
	}

	public int delete(Counters item) throws ClubException {
		if(item.getCountersId()>0){
			return DAO.delete(item);
		}else{
			throw new ClubException(MessageUtils.getMessage("error_param"));
		}
	}

	public int delete(String[] ids) throws ClubException {
		int c = 0;
		if(ids!=null&&ids.length>0){
			for(int i=0; i<ids.length; i++){
				int id = TypeChange.stringToInt(ids[i]);
				Counters item = new Counters();
				item.setCountersId(id);
				try {
					c = c+this.delete(item);
				} catch (ClubException e) {
					logger.error(e.toString());
				}
			}
		}else{
			throw new ClubException(MessageUtils.getMessage("error_delete_noid"));
		}
		return c;
	}

	public List<Counters> findByParameter(CounterParameter param) {
		return DAO.findByParameter(param);
	}

	public long countByParameter(CounterParameter param) {
		return DAO.countByParameter(param);
	}

	public Counters findOnlyByParameter(CounterParameter param) {
		return DAO.findOnlyByParameter(param);
	}

}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?