/** * Copyright (c) 2018 äººäººå¼€æº All rights reserved. * * https://www.renren.io * * 版æƒæ‰€æœ‰ï¼Œä¾µæƒå¿…ç©¶ï¼ */ package com.iailab.framework.common.service; import com.baomidou.mybatisplus.core.conditions.Wrapper; import java.io.Serializable; import java.util.Collection; /** * 基础æœåŠ¡æŽ¥å£ï¼Œæ‰€æœ‰Service接å£éƒ½è¦ç»§æ‰¿ * * @author Mark sunlightcs@gmail.com */ public interface BaseService<T> { Class<T> currentModelClass(); /** * <p> * æ’入一æ¡è®°å½•ï¼ˆé€‰æ‹©å—段,ç–ç•¥æ’入) * </p> * * @param entity 实体对象 */ boolean insert(T entity); /** * <p> * æ’入(批é‡ï¼‰ï¼Œè¯¥æ–¹æ³•ä¸æ”¯æŒ Oracleã€SQL Server * </p> * * @param entityList å®žä½“å¯¹è±¡é›†åˆ */ boolean insertBatch(Collection<T> entityList); /** * <p> * æ’入(批é‡ï¼‰ï¼Œè¯¥æ–¹æ³•ä¸æ”¯æŒ Oracleã€SQL Server * </p> * * @param entityList å®žä½“å¯¹è±¡é›†åˆ * @param batchSize æ’å…¥æ‰¹æ¬¡æ•°é‡ */ boolean insertBatch(Collection<T> entityList, int batchSize); /** * <p> * æ ¹æ® ID 选择修改 * </p> * * @param entity 实体对象 */ boolean updateById(T entity); /** * <p> * æ ¹æ® whereEntity æ¡ä»¶ï¼Œæ›´æ–°è®°å½• * </p> * * @param entity 实体对象 * @param updateWrapper 实体对象å°è£…æ“作类 {@link com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper} */ boolean update(T entity, Wrapper<T> updateWrapper); /** * <p> * æ ¹æ®ID 批é‡æ›´æ–° * </p> * * @param entityList å®žä½“å¯¹è±¡é›†åˆ */ boolean updateBatchById(Collection<T> entityList); /** * <p> * æ ¹æ®ID 批é‡æ›´æ–° * </p> * * @param entityList å®žä½“å¯¹è±¡é›†åˆ * @param batchSize æ›´æ–°æ‰¹æ¬¡æ•°é‡ */ boolean updateBatchById(Collection<T> entityList, int batchSize); /** * <p> * æ ¹æ® ID 查询 * </p> * * @param id 主键ID */ T selectById(Serializable id); /** * <p> * æ ¹æ® ID åˆ é™¤ * </p> * * @param id 主键ID */ boolean deleteById(Serializable id); /** * <p> * åˆ é™¤ï¼ˆæ ¹æ®ID 批é‡åˆ 除) * </p> * * @param idList 主键ID列表 */ boolean deleteBatchIds(Collection<? extends Serializable> idList); }