基于springboot管理系统

博主介绍:
    ✌我是阿龙,一名专注于Java技术领域的程序员,全网拥有10W+粉丝。作为CSDN特邀作者、博客专家、新星计划导师,我在计算机毕业设计开发方面积累了丰富的经验。同时,我也是掘金、华为云、阿里云、InfoQ等平台的优质作者。通过长期分享和实战指导,我致力于帮助更多学生完成毕业项目和技术提升。

技术范围:
    我熟悉的技术领域涵盖SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等方面的设计与开发。如果你有任何技术难题,我都乐意与你分享解决方案。

 主要内容:
     我的服务内容包括:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文撰写与辅导、论文降重、长期答辩答疑辅导。此外,我还提供腾讯会议一对一的专业讲解和模拟答辩演练,帮助你全面掌握答辩技巧与代码逻辑。

🍅获取源码请在文末联系我🍅

目录:

一、详细操作演示视频       在文章的尾声,您会发现一张电子名片👤,欢迎通过名片上的联系方式与我取得联系,以获取更多关于项目演示的详尽视频内容。视频将帮助您全面理解项目的关键点和操作流程。期待与您的进一步交流!        承诺所有开发的项目,全程售后陪伴!!!

系统简介:

2 核心技术介绍

2.1 mysql技术介绍

2.2 IDEA编译器介绍

2.3 SpringBoot框架简介

2.4 Mybatis技术简介

2.5 Vue.js技术简介

系统功能结构设计

系统实现界面:

核心代码:

数据库核心代码:

开发案例(自己开发界面,做不同风格的尝试!只为服务好客户):

2 核心技术介绍

2.1 mysql技术介绍

MySQL是一种广泛使用的开源关系数据库管理系统,由于其高效性、可靠性以及易用性,它成为了众多开发者和企业的首选。在昆明学院二级学院管理系统中,MySQL发挥着核心的数据存储和查询角色[9]。作为一个关系型数据库,MySQL支持复杂的查询语句,这使得管理和检索大量学生和教育相关数据变得更为高效。

昆明学院二级学院管理系统中,MySQL用于存储学生信息、假期返校信息、考勤记录、比赛结果和经济困难认定等多种数据类型。系统设计利用了MySQL的高性能索引,优化查询速度,确保在用户访问高峰时期,系统响应迅速,操作流畅。MySQL的安全特性数据加密和访问控制,确保所有学生和教职工的信息安全,防止未授权访问[10]。

在技术实现方面,昆明学院管理系统采用了MySQL的多用户和多线程支持特性,保证系统能够在多用户同时操作的环境中稳定运行。数据库的可扩展性也使得未来系统升级和功能扩展变得简单,支持更多用户和更大数据量的需求。通过结合Spring Boot框架,系统实现了对数据库操作的高度自动化,简化了后端开发工作,加快了整体开发进度[11]。

2.2 IDEA编译器介绍

IntelliJ IDEA是一款高级的集成开发环境(IDE),广泛应用于Java应用程序的开发。该编译器以其强大的代码辅助功能、智能代码分析和高效的项目管理工具著称。在昆明学院二级学院管理系统的开发过程中,IntelliJ IDEA提供了一个高效率的开发平台,使得开发能够快速地编写、测试和调试代码。

特别是在处理Java语言开发时,IntelliJ IDEA显示出其优越性。集成开发环境支持直接从IDEA内部管理依赖和版本控制,极大地简化了Spring Boot应用的构建和管理过程。IDEA的数据库工具窗口允许开发者直接连接到MySQL数据库,进行数据查询、管理数据库结构以及测试SQL脚本,这对于昆明学院管理系统中数据驱动的功能至关重要。

IDEA的智能代码提示和重构工具也在系统开发中发挥了重要作用,提升了代码的质量和开发速度。错误检测和代码优化建议帮助开发者识别潜在问题,并提供了改进的方向。这一功能集成保证了昆明学院管理系统在开发过程中代码的整洁和系统的稳定性

通过使用IntelliJ IDEA,昆明学院的开发能够更专注于系统功能的实现,而不是环境设置和工具配置,从而加速了整个项目的开发进度

2.3 SpringBoot框架简介

Spring Boot是基于Spring框架的一个扩展,旨在简化新Spring应用的初始搭建以及开发过程。通过提供一套默认的配置,Spring Boot使得项目启动和配置更加快捷。该框架特别适用于构建高性能的企业级应用,允许开发者通过少量的配置实现自动装配。

在昆明学院二级学院管理系统中,Spring Boot提供了核心平台的支持,尤其在创建微服务时表现出色。该系统利用Spring Boot快速开发出稳定的后端服务,包括学生信息管理、假期信息处理、考勤统计和其他模块。由于Spring Boot的自动配置特性,开发能够轻松集成各种Spring生态系统的组件,Spring Data JPA和Spring Security,这些组件在处理数据库交互和确保系统安全方面发挥了重要作用。

Spring Boot的嵌入式服务器选项(Tomcat和Jetty)简化了Web应用的部署流程,无需单独安装和配置Web服务器。Spring Boot的Actuator模块提供了运行时的应用监控和管理功能,使得系统维护更为方便。

2.4 Mybatis技术简介

Mybatis是一个流行的Java持久层框架,通过简化和封装JDBC来提高数据库操作的效率和准确性。Mybatis允许将SQL语句与Java代码分离,通过XML配置文件或注解的方式进行SQL语句的管理。这种分离确保了业务逻辑与数据库交互代码的清晰划分,提高了代码的可维护性和可扩展性。

在昆明学院二级学院管理系统中,Mybatis发挥着关键作用,尤其是在处理复杂的数据持久化操作时。系统中涉及到大量的数据查询、更新和管理,学生信息的存储、假期信息的更新、考勤数据的处理以及其他教学管理活动的数据记录。Mybatis支持动态SQL,使得根据不同条件构建SQL语句变得简单,极大地提升了数据处理的灵活性和效率。

2.5 Vue.js技术简介

Vue.js是一种前端JavaScript框架,主要用于构建用户界面和单页面应用程序。Vue.js的设计哲学是渐进式的,意味着可以根据项目的需求逐步引入Vue.js各种功能或相关库。这一特性使Vue.js不仅易于上手,还能够在项目复杂度增加时,灵活适应开发需求。

昆明学院二级学院管理系统在前端设计中采用Vue.js,主要是因为其轻量级和组件化的特点。系统界面需要处理大量的动态信息,学生信息的实时更新、假期申请状态的改变以及考勤记录的实时显示。Vue.js的响应式编程模型确保了界面能够快速响应这些数据的变化,提供流畅的用户体验。

Vue.js支持虚拟DOM,优化了DOM操作的性能,使得昆明学院管理系统即便在数据量大、用户交互频繁的情况下,也能保持高效的运行。Vue.js的易用性和灵活性允许开发者快速开发出高效、可维护的前端应用,这对于教育管理系统来说至关重要,因为教育系统常需适应教育政策和学校需求的快速变化。

系统功能结构设计

完成了设计思路的构想,接下来就是按照实际要求完成所需功能。该系统功能结构图图4-2所示:

系统实现界面:

核心代码:
 

package com.service;import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.service.IService;
import com.utils.PageUtils;
import com.entity.ZigekaoshiEntity;
import java.util.List;
import java.util.Map;
import com.entity.vo.ZigekaoshiVO;
import org.apache.ibatis.annotations.Param;
import com.entity.view.ZigekaoshiView;/*** 资格考试** @author * @email * @date 2024-04-28 15:57:26*/
public interface ZigekaoshiService extends IService<ZigekaoshiEntity> {PageUtils queryPage(Map<String, Object> params);List<ZigekaoshiVO> selectListVO(Wrapper<ZigekaoshiEntity> wrapper);ZigekaoshiVO selectVO(@Param("ew") Wrapper<ZigekaoshiEntity> wrapper);List<ZigekaoshiView> selectListView(Wrapper<ZigekaoshiEntity> wrapper);ZigekaoshiView selectView(@Param("ew") Wrapper<ZigekaoshiEntity> wrapper);PageUtils queryPage(Map<String, Object> params,Wrapper<ZigekaoshiEntity> wrapper);List<Map<String, Object>> selectValue(Map<String, Object> params,Wrapper<ZigekaoshiEntity> wrapper);List<Map<String, Object>> selectTimeStatValue(Map<String, Object> params,Wrapper<ZigekaoshiEntity> wrapper);List<Map<String, Object>> selectGroup(Map<String, Object> params,Wrapper<ZigekaoshiEntity> wrapper);}

数据库核心代码:
 

/*!40000 DROP DATABASE IF EXISTS `springboot596zvkpp`*/;CREATE DATABASE /*!32312 IF NOT EXISTS*/ `springboot596zvkpp` /*!40100 DEFAULT CHARACTER SET utf8mb4 */;USE `springboot596zvkpp`;--
-- Table structure for table `banfeixinxi`
--DROP TABLE IF EXISTS `banfeixinxi`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `banfeixinxi` (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`banjimingcheng` varchar(200) DEFAULT NULL COMMENT '班级名称',`shouzhiyuefen` varchar(200) DEFAULT NULL COMMENT '收支月份',`shourujine` double DEFAULT NULL COMMENT '收入金额',`zhichujine` double DEFAULT NULL COMMENT '支出金额',`jieyujine` double DEFAULT NULL COMMENT '结余金额',`shouzhimingxi` longtext COMMENT '收支明细',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=300 DEFAULT CHARSET=utf8 COMMENT='班费信息';
/*!40101 SET character_set_client = @saved_cs_client */;--
-- Dumping data for table `banfeixinxi`
--LOCK TABLES `banfeixinxi` WRITE;
/*!40000 ALTER TABLE `banfeixinxi` DISABLE KEYS */;
INSERT INTO `banfeixinxi` VALUES (291,'2024-04-28 07:57:55','班级名称1','收支月份1',1,1,1,'收支明细1'),(292,'2024-04-28 07:57:55','班级名称2','收支月份2',2,2,2,'收支明细2'),(293,'2024-04-28 07:57:55','班级名称3','收支月份3',3,3,3,'收支明细3'),(294,'2024-04-28 07:57:55','班级名称4','收支月份4',4,4,4,'收支明细4'),(295,'2024-04-28 07:57:55','班级名称5','收支月份5',5,5,5,'收支明细5'),(296,'2024-04-28 07:57:55','班级名称6','收支月份6',6,6,6,'收支明细6'),(297,'2024-04-28 07:57:55','班级名称7','收支月份7',7,7,7,'收支明细7'),(298,'2024-04-28 07:57:55','班级名称8','收支月份8',8,8,8,'收支明细8'),(299,'2024-04-28 08:19:21','XX','12',5000,3000,2000,'XXXX');
/*!40000 ALTER TABLE `banfeixinxi` ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table `chat`
--DROP TABLE IF EXISTS `chat`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `chat` (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`userid` bigint(20) NOT NULL COMMENT '用户id',`adminid` bigint(20) DEFAULT NULL COMMENT '管理员id',`ask` longtext COMMENT '提问',`reply` longtext COMMENT '回复',`isreply` int(11) DEFAULT NULL COMMENT '是否回复',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=322 DEFAULT CHARSET=utf8 COMMENT='在线咨询';
/*!40101 SET character_set_client = @saved_cs_client */;--
-- Dumping data for table `chat`
--LOCK TABLES `chat` WRITE;
/*!40000 ALTER TABLE `chat` DISABLE KEYS */;
INSERT INTO `chat` VALUES (311,'2024-04-28 07:57:55',1,1,'提问1','回复1',1),(312,'2024-04-28 07:57:55',2,2,'提问2','回复2',2),(313,'2024-04-28 07:57:55',3,3,'提问3','回复3',3),(314,'2024-04-28 07:57:55',4,4,'提问4','回复4',4),(315,'2024-04-28 07:57:55',5,5,'提问5','回复5',5),(316,'2024-04-28 07:57:55',6,6,'提问6','回复6',6),(317,'2024-04-28 07:57:55',7,7,'提问7','回复7',7),(318,'2024-04-28 07:57:55',8,8,'提问8','回复8',8),(319,'2024-04-28 08:12:29',1714291828800,NULL,'这里可以咨询管理',NULL,0),(320,'2024-04-28 08:19:40',1714291828800,1,NULL,'XXXX',0),(321,'2024-04-28 08:20:01',1714291828800,NULL,'222222222',NULL,1);
/*!40000 ALTER TABLE `chat` ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table `config`
--DROP TABLE IF EXISTS `config`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `config` (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',`name` varchar(100) NOT NULL COMMENT '配置参数名称',`value` varchar(100) DEFAULT NULL COMMENT '配置参数值',`url` varchar(500) DEFAULT NULL COMMENT 'url',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COMMENT='配置文件';
/*!40101 SET character_set_client = @saved_cs_client */;--
-- Dumping data for table `config`
--LOCK TABLES `config` WRITE;
/*!40000 ALTER TABLE `config` DISABLE KEYS */;
INSERT INTO `config` VALUES (1,'picture1','upload/picture1.jpg',NULL),(2,'picture2','upload/picture2.jpg',NULL),(3,'picture3','upload/picture3.jpg',NULL);
/*!40000 ALTER TABLE `config` ENABLE KEYS */;
UNLOCK TABLES;--
-- Table structure for table `daikuanshenqing`
--DROP TABLE IF EXISTS `daikuanshenqing`;
/*!40101 SET @saved_cs_client     = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `daikuanshenqing` (`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '主键',`addtime` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',`daikuanmingcheng` varchar(200) DEFAULT NULL COMMENT '贷款名称',`daikuanleixing` varchar(200) DEFAULT NULL COMMENT '贷款类型',`daikuanjine` int(11) DEFAULT NULL COMMENT '贷款金额',`daikuanshijian` date DEFAULT NULL COMMENT '贷款时间',`shenqingcailiao` longtext COMMENT '申请材料',`daikuanyuanyin` varchar(200) DEFAULT NULL COMMENT '贷款原因',`daikuantupian` longtext COMMENT '贷款图片',`xueshengxuehao` varchar(200) DEFAULT NULL COMMENT '学生学号',`xueshengxingming` varchar(200) DEFAULT NULL COMMENT '学生姓名',`crossuserid` bigint(20) DEFAULT NULL COMMENT '跨表用户id',`crossrefid` bigint(20) DEFAULT NULL COMMENT '跨表主键id',`sfsh` varchar(200) DEFAULT '待审核' COMMENT '是否审核',`shhf` longtext COMMENT '审核回复',PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=260 DEFAULT CHARSET=utf8 COMMENT='贷款申请';
/*!40101 SET character_set_client = @saved_cs_client */;--
-- Dumping data for table `daikuanshenqing`
--

开发案例(自己开发界面,做不同风格的尝试!只为服务好客户):

为什么选择我

我是程序员阿龙,专注于软件开发,拥有丰富的编程能力和实战经验。在过去的几年里,我辅导了上千名学生,帮助他们顺利完成毕业项目,同时我的技术分享也吸引了超过50W+的粉丝。我是CSDN特邀作者、博客专家、新星计划导师,并在Java领域内获得了多项荣誉,如博客之星。我的作品也被掘金、华为云、阿里云、InfoQ等多个平台推荐,成为各大平台的优质作者。
已经为上百名同学获得优秀毕业生!!

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

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

相关文章

B3622 枚举子集

1. 注意dfs内&#xff0c;for循环的遍历&#xff0c;想清楚把什么赋值给a[x] 2.本题只需要把0或1赋值给a[x]所以 #include<bits/stdc.h> using namespace std; int n; int a[20]; int vis[20]; void pr() {for (int i 1; i < n; i) {if (a[i] 0)cout << N;els…

Flink On kubernetes

Apache Flink 是一个分布式流处理引擎&#xff0c;它提供了丰富且易用的API来处理有状态的流处理应用&#xff0c;并且在支持容错的前提下&#xff0c;高效、大规模的运行此类应用。通过支持事件时间&#xff08;event-time&#xff09;、计算状态&#xff08;state&#xff09…

网络分析仪——提升网络性能的关键工具

目录 什么是网络分析仪&#xff1f; 1. 实时流量监控 2. 历史数据回溯分析 3. 网络性能关键指标监测 4. 可视化界面与报告生成 总结 在当今的数字化世界&#xff0c;网络的稳定性和性能直接影响企业的运营效率。网络拥堵、延迟和丢包等问题会导致用户体验的下降&#xff…

Linux常用功能整合

Linux Linux 前言一、常用操作以及概念 快捷键求助关机PATHsudo包管理工具发行版VIM 三个模式GNU开源协议 二、磁盘 磁盘接口磁盘的文件名 三、分区 分区表开机检测程序 四、文件系统 分区与文件系统组成文件读取磁盘碎片blockinode目录日志挂载目录配置 五、文件 文件属性文件…

银行卡基础信息查询 API 对接说明

本文将介绍一种 银行卡基础信息查询 API 对接说明&#xff0c;它可用于银行卡基础信息查询。 接下来介绍下 银行卡基础信息查询 API 的对接说明。 申请流程 要使用 API&#xff0c;需要先到 银行卡基础信息查询 API 对应页面申请对应的服务&#xff0c;进入页面之后&#xf…

服务器系统克隆技术

工作任务&#xff1a;克隆对象是Windows server2019 和2022的datacenter版本 条件&#xff1a;在已经完成安装的虚拟机上做克隆 图1-1 用两个服务器的母盘准备进行克隆 第一步&#xff1a;新建一个文件目录用于安放克隆好的服务器 图1-2 创建两个目录用于安放即将克隆好的服务…

Axure科技感元件:打造可视化大屏设计的得力助手

Axure&#xff0c;作为一款专业的原型设计工具&#xff0c;凭借其强大的设计功能、丰富的组件库和灵活的交互能力&#xff0c;成为了许多设计师打造科技感设计的首选工具。其中&#xff0c;Axure科技感元件更是以其独特的魅力和实用性&#xff0c;在数据可视化大屏、登录界面、…

python画图|在三维空间的不同平面上分别绘制不同类型二维图

【1】引言 前序已经完成了基础的二维图和三维图绘制教程探索&#xff0c;可直达的链接包括但不限于&#xff1a; python画图|3D参数化图形输出-CSDN博客 python画三角函数图|小白入门级教程_正余弦函数画图python-CSDN博客 在学习过程中&#xff0c;发现一个案例&#xff1…

【C】分支与循环2--while/for/do-while/goto以及break和continue在不同循环中的辨析~

分支与循环 while循环 if与while的对比 if(表达式)语句&#xff1b;while(表达式)语句&#xff1b;下面来看一个例子&#xff1a; 用 if 写&#xff1a; #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() {if (1)printf("hehe");//if后面条…

Java双亲委派机制讲解和常见问题解决案例示范

1. 引言 Java 的类加载机制是 JVM 运行时系统的核心之一&#xff0c;而其中的双亲委派机制&#xff08;Parent Delegation Model&#xff09;是保证 Java 平台安全性与可扩展性的关键设计。双亲委派机制确保了 Java 体系中类的加载顺序&#xff0c;防止了类的重复加载与覆盖&a…

ARP欺骗的多种手法

学习参考&#xff1a; ARP欺骗的各种d玩法-CSDN博客 https://juejin.cn/post/7383702153892954164 一、什么是ARP欺骗 1.什么是ARP&#xff1f; ARP (Address Resolution Protocol) 是一种网络层协议&#xff0c;用于将 IP 地址转换为物理地址&#xff08;MAC 地址&#xff0…

湖科大-计网真题笔记

09 序列号不涉及首部

前端开发笔记-- 黑马程序员4

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 css 三角写法用户界面鼠标样式取消表单轮廓vertical-align文本溢出 html5 新标签多媒体标签视频标签![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/d85d…

深入解析 HashMap 的 remove() 方法及其相关实现

HashMap 是 Java 中最常用的集合类之一&#xff0c;它提供了高效的键值对存储和检索功能。本文将详细解析 HashMap 的 remove() 方法及其相关的内部实现&#xff0c;包括 removeNode() 和 removeTreeNode() 方法。通过这些方法&#xff0c;我们可以了解 HashMap 如何高效地移除…

中国剩余定理 C++

题目 解题思路 原链接&#xff1a;https://www.acwing.com/solution/content/3539/ 大致步骤&#xff1a; 将第2,3,4…n个方程不断与第一个方程合并&#xff0c;得到方程a1k1a2k2m2-m1;用扩展欧几里得算法解出a1k1a2k2gcd(a1, a2)的结果&#xff0c;再将结果扩大(m2-m1)/d倍即…

Linux:进程控制(三)——进程程序替换

目录 一、概念 二、使用 1.单进程程序替换 2.多进程程序替换 3.exec接口 4.execle 一、概念 背景 当前进程在运行的时候&#xff0c;所执行的代码来自于自己的源文件。使用fork创建子进程后&#xff0c;子进程执行的程序中代码内容和父进程是相同的&#xff0c;如果子进…

12.2 Linux_进程间通信_共享内存

概述 什么是共享内存&#xff1a; 共享内存又叫内存映射&#xff0c;可以通过mmap()映射普通文件。 实际上就是将磁盘中的一个文件映射到内存的一个缓冲区中去&#xff0c;这样进程就可以直接将这块空间当作普通内存来访问&#xff0c;不需要再使用I/O中的read/write去访问这…

CV实战01 YOLOv5实现图像分割

网上翻了一天&#xff0c;没找到称心的教程&#xff0c;最后发现还是Ultralytics官方的教程文档好用&#xff01;这里贴上官方教程一起学习&#xff01; 【1&#xff1a;找到官方教程文档】 yolov5官方下载地址&#xff1a;GitHub - ultralytics/yolov5: YOLOv5 &#x1f680…

数字后端零基础入门系列 | Innovus零基础LAB学习Day1

一 Floorplan 数字IC后端设计如何从零基础快速入门&#xff1f;(内附数字IC后端学习视频&#xff09; Lab5-1这个lab学习目标很明确——启动Innovus工具并完成设计的导入。 在进入lab之前&#xff0c;我们需要进入我们的FPR工作目录。 其中ic062为个人服务器账户。比如你端…

多线程代码案例

案例一.单例模式 单例模式是一种设计模式;类似于棋谱,有固定套路,针对一些特定场景可以给出一些比较好的解决方案; 只要按照设计模式来写代码,就可以保证代码不会太差,保证了代码的下限; --------------------------------------------------------------------------------…