Java tutorial
/** * Copyright © 2012-2013 <a href="https://github.com/thinkgem/jeesite">JeeSite</a> All rights reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); */ package com.green.modules.sys.service; import java.util.List; import org.apache.commons.lang3.StringUtils; import org.hibernate.criterion.DetachedCriteria; import org.hibernate.criterion.Order; import org.hibernate.criterion.Restrictions; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import com.green.common.persistence.Page; import com.green.common.service.BaseService; import com.green.common.utils.CacheUtils; import com.green.modules.sys.dao.DictDao; import com.green.modules.sys.entity.Dict; import com.green.modules.sys.utils.DictUtils; /** * Service * @author ThinkGem * @version 2013-5-29 */ @Service @Transactional(readOnly = true) public class DictService extends BaseService { @Autowired private DictDao dictDao; public Dict get(String id) { // MyBatis // return myBatisDictDao.get(id); // Hibernate return dictDao.get(id); } public Page<Dict> find(Page<Dict> page, Dict dict) { // MyBatis // dict.setPage(page); // page.setList(myBatisDictDao.find(dict)); // return page; // Hibernate DetachedCriteria dc = dictDao.createDetachedCriteria(); if (StringUtils.isNotEmpty(dict.getType())) { dc.add(Restrictions.eq("type", dict.getType())); } if (StringUtils.isNotEmpty(dict.getDescription())) { dc.add(Restrictions.like("description", "%" + dict.getDescription() + "%")); } dc.add(Restrictions.eq(Dict.FIELD_DEL_FLAG, Dict.DEL_FLAG_NORMAL)); dc.addOrder(Order.asc("type")).addOrder(Order.asc("sort")).addOrder(Order.desc("id")); return dictDao.find(page, dc); } public List<String> findTypeList() { return dictDao.findTypeList(); } @Transactional(readOnly = false) public void save(Dict dict) { dictDao.save(dict); CacheUtils.remove(DictUtils.CACHE_DICT_MAP); } @Transactional(readOnly = false) public void delete(String id) { dictDao.deleteById(id); CacheUtils.remove(DictUtils.CACHE_DICT_MAP); } }