本日任务:服务管理的后端开发

1.学习:护理项目

(1)评估开发工期的思路和注意事项

  • 全面熟悉项目,了解项目重点,设置开发优先级

比如,在下面图片的接口文档中版本有1.0,2.0,3.0也就是功能的初代,二代,三代,所以我们在大致浏览所有功能后,要优先关注初代功能的实现

开发计划

  1. 项目开发计划:在项目开发过程中,制定一份详细计划,用于管理开发工作的执行,确保项目按时交付,达到项目预期的质量和功能要求
  2. 个人开发计划:要根据自己负责的模块制定预期的交付时间

评估工期是作为项目开发的流程之一的 

需求分析:对需求有准确的理解,包括需求的性能,安全等,避免后期因为需求变更导致工期延误

技术复杂度:技术是否是自己是否已经实现过的,是否有新技术需要学习

任务拆解:将需求拆分为一个一个功能点,判断每个功能点需要多久实现

风险评估:例如三方依赖,需求变更,人力资源等风险,我们需要合理考虑

团队协作:如开发人员开发功能后需要前后端联调测试,以及交给专门的测试人员测试等

沟通:与团队成员及时沟通相互的进度,及时获取到工期变更等,避免影响到项目进度
开发计划具体模样

(2)理解模块需求

  • 全方位解读模块

我们要了解不同模块之间的关系

 比如护理计划和护理项目就是n对n的关系,护理计划包含护理项目,而护理等级和护理计划就是1对1的关系,简单来护理项目就是每个项目花费多少钱,护理计划就是每个计划对应多少项目,护理等级就是和护理计划1对1,只是加上了每个等级需要花费的价格.

(3)表结构设计的通用思路及工具的使用

具体参考我的另一篇文章

https://blog.csdn.net/qazwsxplmtgb/article/details/148985275?spm=1001.2014.3001.5501

(4)完成项目模块的开发

定义接口:请求方式,请求路径,请求参数,返回参数

mapper数据库层和业务层

根据情况进行单元测试

api调用测试和前后端联调测试

1.借助AI实现功能:

2.根据ai生成的代码改写

一般分为这几部分:Controller,service,mapper,xml,以及像DTO,VO这些接口

相关话术:

表结构:

CREATE TABLE `nursing_project` ( `id` bigint NOT NULL AUTO_INCREMENT COMMENT '编号', `name` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '名称', `order_no` int DEFAULT NULL COMMENT '排序号', `unit` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '单位', `price` decimal(10,2) DEFAULT NULL COMMENT '价格', `image` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '图片', `nursing_requirement` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '护理要求', `status` int NOT NULL DEFAULT '1' COMMENT '状态(0:禁用,1:启用)', `create_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人', `update_by` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '更新人', `remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', `create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` datetime DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `name` (`name`) USING BTREE ) ENGINE=InnoDB AUTO_INCREMENT=94 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC COMMENT='护理项目表'

要求:

1.根据上述表结构,基于SpringBoot+mybatis生成Controller service mapper,sql语句写在xml文件中,分页查询时要关联创建人,同时生成vo dto

2.加上Swagger相关的注解说明

3.接口文档:(如果有可以,将相关接口文档的内容粘贴上去)

接口的开发顺序:

在Java Web开发中,特别是基于Spring框架的项目,通常推荐的接口开发顺序是:Mapper(DAO) → Service → Controller。这是标准的层次化架构模式,但具体实施时可以根据实际情况灵活调整。以下是详细说明:


1. Mapper层(数据持久层)

  • 首先开发:因为这是数据操作的基础,所有业务逻辑最终都依赖于数据访问。

  • 职责:直接与数据库交互,执行CRUD操作。

  • 开发内容

    • 定义Mapper接口(MyBatis)或继承JpaRepository(Spring Data JPA)。

    • 编写SQL(如XML映射文件或注解方式)。

    • 单元测试验证数据库操作是否正确。


2. Service层(业务逻辑层)

  • 其次开发:在明确数据操作后,编写业务规则和逻辑。

  • 职责

    • 实现核心业务逻辑(如数据处理、事务管理、调用多个Mapper组合操作)。

    • 为Controller提供高内聚的服务接口。

  • 开发内容

    • 定义Service接口及其实现类。

    • 通过依赖注入引入Mapper。

    • 单元测试验证业务逻辑(可使用Mock工具隔离Mapper)。


3. Controller层(表现层)

  • 最后开发:业务和数据逻辑完备后,处理外部请求。

  • 职责

    • 接收HTTP请求,解析参数。

    • 调用Service层并返回响应(JSON/XML等)。

  • 开发内容

    • 定义RESTful或MVC控制器。

    • 参数校验、异常处理、日志记录等。

    • 通过Swagger等工具生成API文档

为什么这个顺序?

  • 依赖方向清晰:Controller → Service → Mapper,避免循环依赖。

  • 逐步验证:从底层到上层,每层可单独测试,降低调试复杂度。

  • 符合设计原则:单一职责、分层隔离、高内聚低耦合。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/pingmian/91541.shtml
繁体地址,请注明出处:http://hk.pswp.cn/pingmian/91541.shtml
英文地址,请注明出处:http://en.pswp.cn/pingmian/91541.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JavaScript:Ajax(异步通信技术)

一、Ajax 核心概念Ajax(Asynchronous JavaScript and XML)是一种异步通信技术,核心特点:无刷新更新:无需重新加载整个页面异步处理:后台发送/接收数据不阻塞用户数据格式:支持 XML/JSON/HTML/纯…

leetcode 118. 杨辉三角 简单

给定一个非负整数 numRows&#xff0c;生成「杨辉三角」的前 numRows 行。在「杨辉三角」中&#xff0c;每个数是它左上方和右上方的数的和。示例 1:输入: numRows 5 输出: [[1],[1,1],[1,2,1],[1,3,3,1],[1,4,6,4,1]]示例 2:输入: numRows 1 输出: [[1]]提示:1 < numRows…

jmeter--While控制器--循环直到接口响应符合条件

场景描述业务场景&#xff1a;单据计算接口情况&#xff1a;单据计算&#xff0c;调用接口1发起计算&#xff0c;接口2查询计算执行结果jmeter脚本&#xff1a;把接口1和接口2&#xff08;接口2循环调用&#xff0c;直到返回执行完成状态&#xff09;添加到一个事务&#xff0c…

组播 | 不同 VLAN 间数据转发实现逻辑 / 实验

注&#xff1a;本文为 “不同 vlan 间组播数据转发” 相关合辑。 图片清晰度受引文原图所限。 略作重排&#xff0c;如有内容异常&#xff0c;请看原文。 组播 VLAN&#xff1a;解决路由器为不同 VLAN 用户复制多份流量问题 aiaiai010101 于 2018-11-16 22:42:06 发布 一、组…

渗透测试常用指令

互联网设备的开放信息查询网站&#xff1a; https://fofa.info/ https://www.zoomeye.org/ https://quake.360.net/quake/#/index https://x.threatbook.com/v5/mapping https://hunter.qianxin.com/ 目录 一、网络探测与扫描 traceroute whatweb ping fping nc n…

51单片机串行通信的设计原理有哪些?

51单片机是指由美国INTEL公司生产的一系列单片机的总称&#xff0c;这一系列单片机包括了许多品种&#xff0c;如8031&#xff0c;8051&#xff0c;8751&#xff0c;8032&#xff0c;8052&#xff0c;8752等&#xff0c;其中8051是最早最典型的产品&#xff0c;该系列其它单片机…

设计模式十四:适配器模式(Adapter Pattern)

适配器模式&#xff08;Adapter Pattern&#xff09;是一种结构型设计模式&#xff0c;用于将一个类的接口转换成客户端期望的另一个接口&#xff0c;使原本不兼容的类可以一起工作。适配器模式的类型类适配器&#xff08;通过多重继承实现&#xff09;对象适配器&#xff08;通…

力扣经典算法篇-38-组合(回溯算法)

1、题干 给定两个整数 n 和 k&#xff0c;返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1&#xff1a; 输入&#xff1a;n 4, k 2 输出&#xff1a; [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ] 示例 2&#xff1a; 输入&#xff1a;…

多人命题系统

目 录 摘 要 Abstract 1 系统概述 1.1 概述 1.2课题意义 1.3 主要内容 2 系统开发环境 2. 1 JAVA简介 2. .2 B/S架构 2.3 SSM三大框架 2.4访问数据库实现方法 2.5 系统对MySQL数据库的两种连接方式 3 需求分析 3.1技术可行性&#xff1a;技术背景…

UDP_千兆光通信(四)Tri Mode Ethernet MAC ip核

Tri Mode Ethernet MAC ip核使用与例程分析 一、 Tri Mode Ethernet MAC ip核功能 二、 Tri Mode Ethernet MAC ip核配置 数据传输速率 主要设置接口 帧滤波功能选择,以及流控选择 三、 Tri Mode Ethernet MAC ip核使用 3.1 ip核接口 3.2 ip核接口说明 3.2.1 tx_ifg_delay 3.2…

Linux网络:多路转接 epoll

Linux网络&#xff1a;多路转接 epoll一、epoll三个接口函数1、epoll_create2、epoll_ctl3、epoll_wait二、epoll的工作原理三、epoll的echo_server1、EpollServer类2、构造函数3、事件循环4、事件派发5、事件处理6、测试四、LT和ET模式1、LT2、ET五、项目代码一、epoll三个接口…

uniapp 微信小程序 列表点击分享 不同的信息

<button open-type"share" plain class"item share" click.stop"shareFn(item)"><text>分享</text> </button>import {onShareAppMessage} from dcloudio/uni-applet shareObj ref({})// 将点击后的分享设置信息 关键…

C# 匿名方法详解

C# 匿名方法详解 引言 在C#编程语言中,匿名方法是使用Lambda表达式创建的没有名称的方法。它们在LINQ查询、事件处理和其他场合中非常有用。本文将详细介绍C#匿名方法的基本概念、语法、使用场景以及优势。 匿名方法的概念 匿名方法是一种无需显式定义名称的方法。在C#中,…

SD卡简介与驱动开发

基本概念 存储卡有很多种类&#xff0c;CF卡、记忆棒、SD卡、XD卡、MMC卡、MS卡、TF卡、MicroSD卡等。平时最常见的有SD卡和MicroSD卡两种&#xff0c; SD卡和MicroSD只是两张卡的大小不同&#xff0c;规格版本是完全相同的&#xff0c;均由SD卡协会推出。 SD卡有不少规范&…

大数据平台数仓数湖hive之拉链表高效实现

对于缓慢变化的维度表&#xff0c;如客户表&#xff0c;员工表&#xff0c;为了不丢失历史数据&#xff0c;又不至于太浪费存储空间&#xff0c;我们采用拉链表实现。 实现过程如下&#xff1a; 1、采集初始数据&#xff1a; 1.1 从mysql导出数据到hdfs /data/dolphinschedu…

【VSCode】常用插件推荐(持续更新~)

以下的这些插件都有使用过&#xff0c;可取对自己编码有用的选择安装。&#x1f9e0; 智能补全 / 提示类插件 1. Auto Import在编码时选择有对应导入包的选项&#xff0c;自动为 JS/TS 文件中的使用项补全并添加 import 声明&#xff0c;极大提高开发效率。2. Iconify IntelliS…

ICML 2025 | 深度剖析时序 Transformer:为何有效,瓶颈何在?

本文介绍帝国理工学院等机构在 ICML 2025 发表的最新研究成果。该研究并未提出新模型&#xff0c;而是对现有时间序列 Transformer 模型进行了一次深刻的拷问——为何结构更简单的 Transformer&#xff08; PatchTST, iTransformer&#xff09;在各大基准测试中&#xff0c;反而…

AIBOX内置5G天线设计

AIBOX内置5G天线设计AIBOX的天线种类天线种类及数量&#xff1a;运营商5G天线*4&#xff0c;1.4G天线*2、wifi天线*1天线形式&#xff1a;内置PCB天线。天线安装方式&#xff1a;卡扣固定&#xff0c;安装至设备外壳内壁。RG-178同轴线或UFL1.37mm同轴线连接至主板&#xff0c;…

低通滤波器的原理以及作用

低通滤波器&#xff08;Low-Pass Filter, LPF&#xff09;是一种允许低频信号通过&#xff0c;同时衰减或阻止高频信号的电子电路或数字信号处理算法。其核心原理和作用如下&#xff1a;一、工作原理 1. 频率选择性- 低通滤波器基于频率对信号进行筛选&#xff0c;其传递函数在…

[AI Coding] 一.腾讯CodeBuddy IDE内测、安装及基本用法(国产AI IDE启航)

在人工智能迅猛发展的今天&#xff0c;AI Coding 正逐步改变传统编程范式。广义上&#xff0c;AI Coding 是指以大语言模型&#xff08;LLMs&#xff09;为核心驱动&#xff0c;借助自然语言理解能力&#xff0c;自动生成、补全、调试与解释代码的智能编程方式。它不仅显著降低…