业务层设计与开发(定义业务层标准) | 学习笔记

简介: 简介:快速学习业务层设计与开发(定义业务层标准)

开发者学堂课程【DAO 开发实战业务分析:业务层设计与开发(定义业务层标准)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/399/detail/5166


业务层设计与开发(定义业务层标准)

 

内容介绍:

一、具体内容

二、定义业务层操作标准


一、具体内容

所有的数据层提供给用户的都属于原子操作,那么所有的原子必须在业务层上进行整合控制。

而且从实际的开发来讲业务层一定要被控制层调用,那么控制层就必须知道业务层的实现标准。


二、定义业务层操作标准

image.png

一般而言,很多人会将业务层称为服务层(Service),那么既然本次的业务层是为了 member 表服务,那么这个业务层的接口名称应该为 IMemberService。

并且将其保存在 cn.mldn.service 包中。

范例:定义 IMemberService 接口

打开

image.png

package cn.mldn.oracle.service;

import cn.mldn.oracle.vo.Member;

public interface IMemberService {

/**

*实现用户数据的追加操作处理,本操作要执行如下功能:

*<li>1、使用IMemberDAO.findById()方法判断要增加的用户信息是否存在。</li>

*<li>2、使用IMemberDAO.findByPhone()方法判断要增加的用户

电话是否存在</li>

*<li>3、使用IMemberDAO.doCreate()保存数据</ li>

*@param vo要追加的Vo对象

*@return增加成功返回true,否则返回false

*@throws Exception

*/

public boolean add( Member vo) throws Exception ;

/**

*进行用户数据的更新处理,此时需要执行如下操作: <br>

*<li>1、要判断修改后的电话是否已经存在(不包含自己的)</ li>

*<li>2、调用IMemberDA0.doUpdate()方法进行修改</li>

*@param vo 包含要更新的用户数据

*@return更新成功返回true,否则返回false

*@throws Exception

*/

public boolean edit(Member vo) throws Exception ;

/**

*进行用户数据的删除处理,本操作需要经过如下处理: <br>

<li>1、判断集合之中是否有数据。</ li>

<li>2、调用IMemberDA0.doRemoveBatch()方法删除数据。</li>

*@param ids包含所有要删除的数据

*@return如果集合为空(或者集合之中没有数据),以及删除失败返回都是false,否则返回true

*@throws Exception

*/

public boolean remove(Set<String> ids) throws Exception ;

/**

*根据用户编号查询用户信息,调用IMemberDAO.findById()操作

*@param id要查询的用户编号

*@return如果编号存在以vO对象返回,否则返回null

*@throws Exception

*/

public Member get(String id) throws Exception

/**

*调用IMemberDAO.findAl1()查询全部数据

*@return所有的数据以List集合返回,如果没有数据则集合长度为0

*@throws Exception

*/

public List<Member> list( ) throws Exception ;

/**

*数据的分页列表显示,要执行如下操作: <br>

*<li>1、调用IMemberDAO.findAllSplit()方法,取得全部的数据</li>

*<li>2调用IMemberDAO.getAllCount()方法,统计数据量</li>

*@param currentPage_当前所在页

*@param linesize每医显示的数据量

*@return本次的操作会返回多个结果,以Map的形式保存,包括如下内容:<br>

*<li>key = allMembers、value =

IMemberDAO.findAllSplit(),

类型:

List<Member></li>

*<li>key = memberCount、value = IMember DA0. getAllCount(),类型:Long< / li>

*@throws Exception

*/

public Map<String,0bject>list(int currentPage,int lineSize)throws Exception ;

/**

*数据的分页列表显示,要执行如下操作: <br>

*<li>1、调用IMemberDAO.findAllSplit()方法,取得全部的数据</li>

*<li>2调用IMemberDAO.getAllCount()方法,统计数据量</li>

*param column模糊查询的数据列

*@param keyword 模糊查询关键字

*@param currentPage当前所在页

*@param linesize每页显示的数据量

*@return本次的操作会返回多个结果,以Map的形式保存,包括如下内容:<br>

*<li>key = allMembers、value =

IMemberDAO.findAllSplit(),类型:

List<Member></li>

*<li>key = memberCount、value = IMember DA0. getAllCount(),类型:Long< / li>

*@throws Exception

*/

public Map<String,0bject> list(String column,String keyword int currentPage,int lineSize)throws Exception ;

所有的设计严格按照之前的要求进行开发。

相关文章
|
资源调度 负载均衡 监控
PD在TiDB集群中的角色
【2月更文挑战第28天】PD是TiDB集群的核心组件,负责元数据管理、资源调度、负载均衡和故障恢复。它保证元数据一致性,智能调度数据以实现负载均衡,快速响应故障恢复,同时提供集群监控和告警功能,确保TiDB的高性能、高可用性和稳定性。随着技术进步,PD将持续优化,提升数据库服务体验。
|
机器学习/深度学习 存储 计算机视觉
【CVPR2020】ECA-Net:深度卷积神经网络的有效通道注意力
【CVPR2020】ECA-Net:深度卷积神经网络的有效通道注意力
2131 1
【CVPR2020】ECA-Net:深度卷积神经网络的有效通道注意力
《云网络:数字经济的连接(全彩)》电子版地址
云网络:数字经济的连接(全彩)-试读
805 0
《云网络:数字经济的连接(全彩)》电子版地址
|
自然语言处理 IDE 开发工具
通义灵码编程智能体上线,支持Qwen3模型
通义灵码最全使用指南,一键收藏。
128502 31
通义灵码编程智能体上线,支持Qwen3模型
|
Linux SDN 网络虚拟化
Linux虚拟网络设备全景解析:定义、工作模式与实践应用
在深入探索Linux操作系统的强大功能时,我们不可避免地会遇到虚拟网络设备的概念。这些设备扮演着构建和维护虚拟化环境中网络通信的关键角色。本文旨在详细介绍Linux虚拟网络设备的定义、工作模式以及它们的多样化用途。
Linux虚拟网络设备全景解析:定义、工作模式与实践应用
|
网络协议 Linux 网络虚拟化
什么是 DHCP?为什么要使用它?
【8月更文挑战第4天】
8434 12
什么是 DHCP?为什么要使用它?
|
SQL 缓存 监控
技术方案到底怎么写?7步完美搞定!
总结了作者多年编写技术方案的经验,介绍了如何通过七个步骤来编写技术方案,包括系统用例、功能链路、核心业务流程、数据库设计、接口设计、非功能设计和系统风险点评估,帮助开发人员更高效地进行系统设计和需求分析。
技术方案到底怎么写?7步完美搞定!
|
设计模式 JSON 数据可视化
如何设计一个灵活的审批流程
如何设计一个灵活的审批流程
918 0