Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

BaseService

lxy edited this page Jul 6, 2021 · 1 revision
import com.gitee.fastmybatis.core.mapper.CrudMapper;
import com.gitee.fastmybatis.core.query.Query;
import com.gitee.fastmybatis.core.support.PageEasyui;
import com.gitee.fastmybatis.core.util.MapperUtil;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import java.util.Collections;
import java.util.List;
import java.util.function.Supplier;
import java.util.stream.Collectors;
/**
 * service基类
 * @author tanghc
 */
public abstract class BaseService<E, Mapper extends CrudMapper<E, Long>> {
 
 @Autowired
 private Mapper mapper;
 public Mapper getMapper() {
 return mapper;
 }
 public PageEasyui<E> page(Query query) {
 return MapperUtil.queryForEasyuiDatagrid(mapper, query);
 }
 public <T> PageEasyui<T> page(Query query, Class<T> clazz) {
 return MapperUtil.queryForEasyuiDatagrid(mapper, query, clazz);
 }
 public List<E> listAll() {
 return listAll(new Query());
 }
 public List<E> listAll(Query query) {
 return mapper.list(query.setQueryAll(true));
 }
 public <R> List<R> listAll(Supplier<R> supplier) {
 List<E> list = mapper.list(new Query().setQueryAll(true));
 if (list == null || list.isEmpty()) {
 return Collections.emptyList();
 }
 return list.stream()
 .map(source -> {
 R target = supplier.get();
 BeanUtils.copyProperties(source, target);
 return target;
 })
 .collect(Collectors.toList());
 }
 public List<E> list(Query query) {
 return mapper.list(query);
 }
 public List<E> list(String column, Object value) {
 return mapper.listByColumn(column, value);
 }
 public E get(Query query) {
 return mapper.getByQuery(query);
 }
 public E get(String column, Object value) {
 return mapper.getByColumn(column, value);
 }
 /**
 * 根据主键查询
 *
 * @param id 主键
 * @return 返回记录,没有返回null
 */
 public E getById(Long id) {
 return mapper.getById(id);
 }
 /**
 * 新增,忽略null字段
 *
 * @param entity 新增的记录
 * @return 返回影响行数
 */
 public int save(E entity) {
 return mapper.saveIgnoreNull(entity);
 }
 /**
 * 批量添加
 * @param entityList 添加对象
 * @return 返回影响行数
 */
 public int saveBatch(List<E> entityList) {
 return mapper.saveBatch(entityList);
 }
 /**
 * 修改,忽略null字段
 *
 * @param entity 修改的记录
 * @return 返回影响行数
 */
 public int update(E entity) {
 return mapper.updateIgnoreNull(entity);
 }
 /**
 * 删除记录
 *
 * @param entity 待删除的记录
 * @return 返回影响行数
 */
 public int delete(E entity) {
 return mapper.delete(entity);
 }
}

Clone this wiki locally

AltStyle によって変換されたページ (->オリジナル) /