首页 > 其他分享 >SSM-基类-Service

SSM-基类-Service

时间:2023-05-30 20:33:31浏览次数:39  
标签:getBaseMapper return Service id SSM boolean filters 基类 public

多态中父类不能调用子类独有的属性和方法,如何间接使用?

image

1.BaseService基本接口

public interface BaseService<T> {
    
	//根据条件分页查询
    PageInfo<T> findPage(Map<String,String> filters);
    
	//增
    boolean insert(T t);

    //改
    boolean update(T t);
	
	//删
    boolean delete(Integer id);

    //查
    T findById(Integer id);
}

2.BaseServiceImpl实现类基类【父类】

public abstract class BaseServiceImpl<T> {
	
	/**
	*父类给子类安排一个必须实现的抽象方法,子类实现的时候把子类的属性带过来
	*/
    public abstract BaseMapper<T> getBaseMapper();



	//分页查询所有
    @Transactional(readOnly = true,propagation = Propagation.SUPPORTS)
    public PageInfo<T> findPage(Map<String, String> filters) {
        PageHelper.startPage(CastUtil.castInt(filters.get("pageNum"),1),CastUtil.castInt(filters.get("pageSize"),10));
		
        List<T> list = getBaseMapper().findPageList(filters);
		
        return new PageInfo<>(list,10);
    }
	
	//增
    @Transactional
    public boolean insert(T admin) {
        return getBaseMapper().insert(admin);
    }
	//改
    @Transactional
    public boolean update(T admin) {
        return getBaseMapper().update(admin);
    }
	//删
    @Transactional
    public boolean delete(Integer id) {
        return getBaseMapper().delete(id);
    }

	//查
    @Transactional(readOnly = true,propagation = Propagation.SUPPORTS)
    public T findById(Integer id) {
        return getBaseMapper().findById(id);
    }
}

3.具体Service实现类

@Service
public class AdminServiceImpl extends BaseServiceImpl<Admin> implements AdminService {
    
	//子类属性
	@Autowired
    private AdminMapper adminMapper;
	
	//实现父类安排的抽象方法,把属性传过去
    @Override
    public BaseMapper getBaseMapper() {
        return adminMapper;
    }
}

标签:getBaseMapper,return,Service,id,SSM,boolean,filters,基类,public
From: https://www.cnblogs.com/newleesoo/p/17444323.html

相关文章

  • Flowable基础表介绍-基础Service接口
    基础表结构Flowable的所有数据库表都以ACT_开头。第二部分是说明表用途的两字符标示符。ACT_RE_:'RE’代表repository。带有这个前缀的表包含“静态”信息,例如流程定义与流程资源(图片、规则等)。ACT_RU_:'RU’代表runtime。这些表存储运行时信息,例如流程实例(processinstance)、用......
  • ServiceComb使用实践
    ServiceComb是一个开源的微服务框架,提供了丰富的功能和工具,用于构建和管理分布式微服务架构。它基于ApacheServiceComb社区项目的成果,并提供了可靠性、可扩展性和易用性。下面是ServiceComb的介绍以及使用Java代码实现的入门示例:ServiceComb的介绍:ServiceComb旨在简化构建和管......
  • SSM-增删查改+分页
    【分页+增删查改】中:分页:即原来的findAll升级之后的findPage增:insert插入一条删:delete删除一条查:findById为了【改】,一般不单独用改:updateMap接收参数必须加@RequestParamAdmin实体类接收参数无需加参数路径参数需要出现3次/***@CreateTime:2023/......
  • laravel实现调用 webservice 接口
    1、打开php.ini  放开soap  2、代码实现 ......
  • linphone-LinphoneService.java文件分析
    说明主要是处理接听电话的逻辑,监听linphone拨打电话的状态逻辑。官方注释/****Linphoneservice,reactingtoIncomingcalls,...<br/>**Rolesinclude:<ul>*<li>InitializingLinphoneManager</li>*<li>StartingClibLinphonethroughLinphoneManage......
  • rabbitMQ windows环境重装后报错RabbitMQ service is already present - only updatin
    错误如下:C:\Users\Administrator>rabbitmq-serviceinstallRabbitMQserviceisalreadypresent-onlyupdatingserviceparametersC:\ProgramFiles\erl\erts\bin\erlsrv:Warning,couldnotsetcorrectinteractivemode.Error:句柄无效。---此行有时显示中文乱码C:\Progr......
  • SSM学习第二天
    SSM学习第二天今日目标掌握IOC/DI配置管理第三方bean掌握IOC/DI的注解开发掌握IOC/DI注解管理第三方bean完成Spring与Mybatis及Junit的整合开发1,IOC/DI配置管理第三方bean前面所讲的知识点都是基于我们自己写的类,现在如果有需求让我们去管理第三方jar包中的类,该如何管......
  • SSM学习第一天
    SSM学习第一天今日目标掌握Spring相关概念完成IOC/DI的入门案例编写掌握IOC的相关配置与使用掌握DI的相关配置与使用1,课程介绍对于一门新技术,我们需要从为什么要学、学什么以及怎么学这三个方向入手来学习。那对于Spring来说:1.1为什么要学?从使用和占有率看Sp......
  • WebService的简单使用
    1.创建服务端-java项目@WebServicepublicclassMyFirstWebService{/***定义webservice服务器中的方法*@paramcontent*@return*/publicStringtestWebService(Stringcontent){System.out.println("我收到了你发的信息:"+conte......
  • net core中BackgroundService
    publicclassPeriodicBackgroundTask:BackgroundService{privatereadonlyTimeSpan_period=TimeSpan.FromSeconds(5);privatereadonlyILogger<PeriodicBackgroundTask>_logger;publicPeriodicBackgroundTask(ILogger<PeriodicBackgroundT......