📄 countryserviceimpl.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 + -