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

📄 countryserviceimpl.java

📁 ext-demo,ext简单示例
💻 JAVA
字号:
/**
 * Copyright (c) http://www.hao-se.cn Ltd.,2007 All  rights  reserved.
 */
package cn.haose.service.impl;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;
import org.hibernate.criterion.MatchMode;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import org.hibernate.criterion.Restrictions;

import cn.haose.dao.BaseEntityDAO;
import cn.haose.model.Country;
import cn.haose.service.CountryService;
import cn.haose.util.Page;

/**
 * 国别的服务类
 * 
 * @author hao-se.cn(好·色)
 */
public class CountryServiceImpl implements CountryService {
	/** 国别DAO */
	private BaseEntityDAO<Country> countryDAO;

	/**
	 * @param countryDAO
	 */
	public void setCountryDAO(BaseEntityDAO<Country> countryDAO) {
		this.countryDAO = countryDAO;
	}

	/**
	 * 根据唯一id,获取国别实体
	 * 
	 * @param id
	 * @return
	 */
	public Country getCountryById(String id) {
		return countryDAO.getByID(id);
	}

	/**
	 * 追加新国别
	 * 
	 * @param country
	 */
	public void saveCountry(Country country) {
		countryDAO.saveEntity(country);
	}

	/**
	 * 删除国别
	 * 
	 * @param country
	 */
	public void deleteCountry(Country country) {
		countryDAO.deleteEntity(country);
	}

	/**
	 * 更新国别
	 * 
	 * @param country
	 */
	public void updateCountry(Country country) {
		countryDAO.saveEntity(country);
	}

	/**
	 * 查找属性值相等的对象
	 * 
	 * @param name(属性名)
	 * @param value(属性值)
	 * @return
	 */
	public List<Country> findBy(String name, Object value) {
		return countryDAO.findBy(name, value);
	}

	/**
	 * 获取总的记录数
	 * 
	 * @param fieldName 字段名称
	 * @param filterValue 对应字段的值
	 * @return 总的记录数
	 */
	public int findTotalCount(String fieldName, String filterValue) {
		DetachedCriteria dc = DetachedCriteria.forClass(Country.class);
		dc.setProjection(Projections.rowCount());
		if (filterValue != null && !"".equals(filterValue.trim())) {
			dc.add(Restrictions.like(fieldName, filterValue.trim(),
					MatchMode.ANYWHERE));
		}

		List list = countryDAO.findByDetachedCriteria(dc);

		return Integer.parseInt(list.get(0).toString());
	}

	/**
	 * 分页显示数据
	 * 
	 * @param fieldName 字段名称
	 * @param filterValue 对应字段的值
	 * @param start 开始的记录位置
	 * @param pageSize 每页的记录数
	 * @return
	 */
	public List<Country> pagingQuery(String fieldName, String filterValue,
			int start, int pageSize) {
		// 从1开始的页号
		int pageNo = 1;

		DetachedCriteria dc = DetachedCriteria.forClass(Country.class);
		dc.addOrder(Order.desc("createDate"));
		if (filterValue != null && !"".equals(filterValue.trim())) {
			dc.add(Restrictions.like(fieldName, filterValue.trim(),
					MatchMode.ANYWHERE));
		}
		if (start > 0) {
			pageNo = start / pageSize + 1;
		}

		Page page = countryDAO.pagedQuery(dc, pageNo, pageSize);

		return (List<Country>) page.getResult();
	}
}

⌨️ 快捷键说明

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