All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.github.fartherp.framework.database.service.GenericService Maven / Gradle / Ivy

There is a newer version: 3.0.6
Show newest version
/*
 * Copyright (C) 2018 hyssop, Inc. All Rights Reserved.
 */

/*
 * Copyright (c) 2017. CK. All rights reserved.
 */

package com.github.fartherp.framework.database.service;

import java.util.List;

/**
 * Created by IntelliJ IDEA.
 * Author: CK
 * Date: 2015/6/5.
 */
public interface GenericService {
    /**
     * 删除对象
     *
     * @param id id
     */
    void delete(ID id);

    /**
     * 批量删除对象
     */
    void deleteBatch(ID[] ids);

    /**
     * 查询所有对象
     * @return all data object list
     */
    List findAll();

    /**
     * 通过主键查询对象
     *
     * @param id  data id
     * @return data object
     */
    T findById(ID id);

    /**
     * 查找所有记录数量
     * @return 数量
     */
    long count();

    /**
     * 保存对象
     *
     * @param entity entity
     */
    ID saveEntity(T entity);

    /**
     * 保存对象不为空的属性值(其余为数据库的默认值)
     *
     * @param entity entity
     * @return ID
     */
    ID saveEntitySelective(T entity);

    /**
     * 批量保存
     * @param entitys entitys
     */
    void saveBatch(List entitys);

    /**
     * 更新对象的所有属性
     *
     * @param entity entity
     */
    void updateEntity(T entity);

    /**
     * 更新对象不为空的属性值
     *
     * @param entity entity
     */
    void updateEntitySelective(T entity);

    /**
     * 保存或更新(如果对象已存在)
     *
     * @param entity object
     * @return object
     */
    T saveOrUpdate(T entity);

    /**
     * 保存或更新(如果对象已存在)
     *
     * @param entity object
     * @return object
     */
    T saveOrUpdateSelective(T entity);
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy