自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(316)
  • 资源 (2)
  • 收藏
  • 关注

原创 【数据结构与算法】(25)高级数据结构与算法设计之 单调队列和栈问题 代码示例与详细讲解

【代码】【数据结构与算法】(25)高级数据结构与算法设计之 单调队列和栈问题 代码示例与详细讲解。

2024-02-25 22:49:19 1015 2

原创 【数据结构与算法】(24)高级数据结构与算法设计之 双指针问题 代码示例与详细讲解

与 Leetcode 1 的两数之和区别在于,本题的数组是升序排好的。下面是的题目都会涉及双指针,除此外,还有。

2024-02-25 22:47:57 862

原创 【数据结构与算法】(23)高级数据结构与算法设计之 Backtracking Algorithm回溯算法 代码示例与详细讲解

似乎 ArrayList 作为 stack 性能高一些,见下面代码,但是这道题在 leetcode 上执行时间不稳定,相同代码都会有较大时间差异(15ms vs 9ms)与之前的零钱兑换问题其实是一样的,只是。这道题更类似于 77 题,区别在于。

2024-02-25 22:46:15 972

原创 【数据结构与算法】(22)高级数据结构与算法设计之 Divide and Conquer 分治法 代码示例与详细讲解

分治思想将大问题划分为两个到多个子问题子问题可以继续拆分成更小的子问题,直到能够简单求解如有必要,将子问题的解进行合并,得到原始问题的解之前学过的一些经典分而治之的例子二分查找快速排序归并排序合并K个排序链表 - LeetCode 23。

2024-02-25 22:41:53 722

原创 【数据结构与算法】(21)高级数据结构与算法设计之 Dynamic-Programming 动态规划算法 代码示例与详细讲解

降维2) 最短路径 - Bellman-Ford3) 不同路径-Leetcode 62机器人要从左上角走到右下角,每次只能向右或向下,问一共有多少条不同路径?分析,先考虑较为简单的情况可能路径有三种情况:分析:设坐标为,共有 m 行 n 列如果终点是 (0,1) 那么只有一种走法如果终点是 (1,0) 那么也只有一种走法如果终点是 (1,1) 呢,它的走法是从它的上方走下来,或者从它的左边走过来,因此走法 = (0,1) + (1,0) = 2种如果终点是 (2,0) 那么也只有一种走法如果终点

2024-02-25 22:36:23 751

原创 【数据结构与算法】(20)高级数据结构与算法设计之 Greedy Algorithm 贪心算法 代码示例与详细讲解

简单说就是建立【字符】到【数字】的对应关系,如下面大家熟知的 ASC II 编码表,例如,可以查表得知字符【a】对应的数字是十六进制数【0x61】这回解码没问题了,但并非最少字节,因为 c 的出现频率高(7 次)a 的出现频率低(1 次),因此出现频率高的字符编码成短数字更经济。假设传输的字符中只包含 a,b,c 这 3 个字符,有同学重新设计一张二进制编码表,见下图。不行,因为解码会出现问题,因为 10 会被错误的解码成 ba,而不是 c。现在希望找到一种最节省字节的传输方式,怎么办?

2024-02-25 22:30:41 963

原创 【数据结构与算法】(19)高级数据结构与算法设计之 图 拓扑排序 最短路径 最小生成树 不相交集合(并查集合)代码示例

荷兰语:[ˈɛtsxər ˈʋibə ˈdɛikstra] 1930年5月11日-2002年8月6日)是一位荷兰计算机科学家、程序员、软件工程师、系统科学家和科学散文家。他因对开发结构化编程语言做出的基础贡献而获得了1972年的图灵奖,并担任德克萨斯大学奥斯汀分校的斯伦贝谢百年计算机科学主席,任职时间从1984年到2000年。在他于2002年去世前不久,他因其在程序计算的自稳定性方面的工作而获得了ACM PODC分布式计算有影响力论文奖。为了纪念他,该年度奖项在接下来的一年更名为迪克斯特拉奖。

2024-02-25 22:26:29 1089

原创 【数据结构与算法】(18)高级数据结构与算法设计之 图的概念、图的表示、Java表示、DFS、BFS

如果两个顶点之间存在路径,则这两个顶点是连通的,所有顶点都连通,则该图被称之为连通图,若子图连通,则称为连通分量。路径被定义为从一个顶点到另一个顶点的一系列连续边,例如上图中【北京】到【上海】有多条路径。在有向图中,从一个顶点开始,可以通过若干条有向边返回到该顶点,那么就形成了一个环。该图有四个顶点:A、B、C、D 以及四条有向边,有向图中,边是单向的。边可以有权重,代表从源顶点到目标顶点的距离、费用、时间或其他度量。如果是无向图,那么边是双向的,下面是一个无向图的例子。是指与该顶点相邻的边的数量。

2024-02-25 22:22:46 934

原创 【数据结构与算法】(17)基础算法 之排序算法(冒泡排序、选择排序、堆排序、希尔排序、插入排序、归并排序、归并插入、计数排序、桶排序、基数排序) 相关示例 详细代码讲解

算法最好最坏平均空间稳定思想注意事项冒泡O(n)O(n2n^2n2O(n2n^2n2O(1)Y比较最好情况需要额外判断选择O(n2n^2n2O(n2n^2n2O(n2n^2n2O(1)N比较交换次数一般少于冒泡堆O(nlognnlognnlognO(nlognnlognnlognO(nlognnlognnlognO(1)N选择堆排序的辅助性较强,理解前先理解堆的数据结构插入。

2024-02-25 22:16:26 1058

原创 【数据结构与算法】(16)基础算法 之哈希表 相关示例 详细代码讲解

题目中说明 s 由英文字母、数字、符号和空格组成,因此它的范围是有限的(在 0 ~127 之内),可以用数组来替代 HashMap 优化,如下。begin 调整时的解释,遇到重复的 begin 应该向右调整,例如。的过程,其中编号是一个有限范围内的数字(如 int 范围内)未考虑 hash 码的生成,假定该 hash 码由我们提供。但还有一种情况需要考虑,就是连续遇到两次重复,例如。后两行避免 lambda,12 ms。解法1:用 HashSet。sb 避免每次新建 4ms。简洁解法 14 ms。

2024-02-25 22:06:51 833

原创 【数据结构与算法】(15)基础算法 之 B 树 相关示例 详细代码讲解

B树(B-Tree)结构是一种高效存储和查询数据的方法,它的历史可以追溯到1970年代早期。B树的发明人Rudolf Bayer和Edward M. McCreight分别发表了一篇论文介绍了B树。这篇论文是1972年发表于《ACM Transactions on Database Systems》中的,题目为"Organization and Maintenance of Large Ordered Indexes"。

2024-02-25 22:03:12 882

原创 【数据结构与算法】(14)基础算法 之AVL 树相关示例 详细代码讲解

红黑树是一种自平衡二叉查找树,最早由一位名叫Rudolf Bayer的德国计算机科学家于1972年发明。然而,最初的树形结构不是现在的红黑树,而是一种称为B树的结构,它是一种多叉树,可用于在磁盘上存储大量数据。在1980年代早期,计算机科学家Leonard Adleman和Daniel Sleator推广了红黑树,并证明了它的自平衡性和高效性。从那时起,红黑树成为了最流行的自平衡二叉查找树之一,并被广泛应用于许多领域,如编译器、操作系统、数据库等。

2024-02-25 22:01:22 758

原创 【数据结构与算法】(13)基础算法 之AVL 树相关示例 详细代码讲解

AVL 树是一种自平衡二叉搜索树,由托尔·哈斯特罗姆在 1960 年提出并在 1962 年发表。它的名字来源于发明者的名字:Adelson-Velsky 和 Landis,他们是苏联数学家,于 1962 年发表了一篇论文,详细介绍了 AVL 树的概念和性质。在二叉搜索树中,如果插入的元素按照特定的顺序排列,可能会导致树变得非常不平衡,从而降低搜索、插入和删除的效率。为了解决这个问题,AVL 树通过在每个节点中维护一个平衡因子来确保树的平衡。平衡因子是左子树的高度减去右子树的高度。

2024-02-25 21:59:14 1018

原创 【数据结构与算法】(12)基础算法 之 查找概述(线性查找、二分查找、哈希表查找)与二叉搜索树相关示例 详细代码讲解

查找算法是一种在数据集中寻找特定数据项的方法。通常,数据集是在计算机程序中存储的,例如数组、链表或散列表。在编写程序时,查找算法是非常重要的,它有助于快速找到所需的数据。在本文中,我们将介绍一些基本的查找算法及其特点。二叉搜索树最早是由Bernoulli兄弟在18世纪中提出的,但是真正推广和应用该数据结构的是1960年代的D.L. Gries。他的著作《The Science of Programming》中详细介绍了二叉搜索树的实现和应用。

2024-02-25 21:51:56 1489

原创 【数据结构与算法】(11)基础数据结构 之 二叉树 二叉树的存储与遍历及相关示例 详细代码讲解

对于前、中两种遍历,实际以上代码从右子树向回走时,并未走完全程(stack 提前出栈了)后序遍历以上代码是走完全程了。例如,下面的树遇到的第一个叶子节点 3 所在的层就是最小深度,其他 4,7 等叶子节点深度更深,也更晚遇到。上面两种情况满足时,不应该再把为 null 子树的深度 0 参与最小值比较,例如这样。效率会高于之前后序遍历解法,因为找到第一个叶子节点后,就无需后续的层序遍历了。对于数组表现的二叉树,则直接遍历数组即可,自然为层序遍历的顺序。下面是一种统一的写法,依据后序遍历修改。

2024-02-05 22:00:56 1267 3

原创 【数据结构与算法】(10)基础数据结构 之 堆 建堆及堆排序 详细代码示例讲解

在 https://www.wolframalpha.com/ 输入。求数组中的第 K 大元素,使用堆并不是最佳选择,可以采用快速选择算法。可以扩容的 heap, max 用于指定是大顶堆还是小顶堆。以大顶堆为例,相对于之前的优先级队列,增加了堆化等方法。本题还可以使用平衡二叉搜索树求解,不过代码比两个堆复杂。求数据流中的第 K 大元素,使用堆最合适不过。下面看交换次数的推导:设节点高度为 3。可以使用之前课堂例题的大顶堆来实现。小顶堆(可删去用不到代码)上题的小顶堆加一个方法。

2024-02-05 21:57:00 879 1

原创 【数据结构与算法】(9)基础数据结构 之 阻塞队列的单锁实现、双锁实现详细代码示例讲解

队列从 0 变化到不空,会唤醒一个等待的 poll 线程,这个线程被唤醒后,肯定能拿到 headLock 锁,因此它具备了唤醒 headWaits 上其它 poll 线程的先决条件。下面来看一个难题,就是如何通知 headWaits 和 tailWaits 中等待的线程,比如 poll 方法拿走一个元素,通知 tailWaits:我拿走一个,不满了噢,你们可以放了,因此代码改为。事情还没有完,上面的例子是队列还没有放满的情况,考虑下面的代码(这回锁同时保护了 tail 和 size 的读写安全)

2024-02-04 22:56:16 1011 2

原创 【数据结构与算法】(8)基础数据结构 之 优先级队列的无序数组实现、有序数组实现、堆实现详细代码示例讲解

例2 - 完全二叉树(Complete Binary Tree)特点:最后一层可能未填满,靠左对齐。例1 - 满二叉树(Full Binary Tree)特点:每一层都是填满的。题目中要从小到大排列,因此选择用小顶堆来实现,自定义小顶堆如下。这道题目之前解答过,现在用刚学的优先级队列来实现一下。计算机科学中,堆是一种基于树的数据结构,通常用。完全二叉树可以使用数组来表示。

2024-02-04 22:52:31 1196

原创 【数据结构与算法】(7)基础数据结构之双端队列的链表实现、环形数组实现示例讲解

双端队列、队列、栈对比定义特点队列一端删除(头)另一端添加(尾)栈一端删除和添加(顶)双端队列两端都可以删除、添加优先级队列优先级高者先出队延时队列根据延时时间确定优先级并发非阻塞队列队列空或满时不阻塞并发阻塞队列队列空时删除阻塞、队列满时添加阻塞Java 中 LinkedList 即为典型双端队列实现,不过它同时实现了 Queue 接口,也提供了栈的 push pop 等方法注2:不同语言,操作双端队列的方法命名有所不同,参见下表操作JavaJavaScript。

2024-02-04 22:47:54 691

原创 【数据结构与算法】(6)基础数据结构之栈的链表实现、环形数组实现示例讲解

计算机科学中,stack是一种线性的数据结构,只能在其一端添加数据和移除数据。习惯来说,这一端称之为栈顶,另一端不能操作数据的称之为栈底,就如同生活中的一摞书先提供一个栈接口/*** 向栈顶压入元素* @param value 待压入值* @return 压入成功返回 true, 否则返回 false/*** 从栈顶弹出元素* @return 栈非空返回栈顶元素, 栈为空返回 null*/ E pop();/*** 返回栈顶元素, 不弹出。

2024-02-04 22:43:30 495

原创 【数据结构与算法】(5)基础数据结构之队列 链表实现、环形数组实现详细代码示例讲解

计算机科学中,queue 是以顺序的方式维护的一组数据集合,在一端添加数据,从另一端移除数据。习惯来说,添加的一端称为尾,移除的一端称为头,就如同生活中的排队买商品queue先定义一个简化的队列接口/*** 向队列尾插入值* @param value 待插入值* @return 插入成功返回 true, 插入失败返回 false/*** 从对列头获取值, 并移除* @return 如果队列非空返回对头值, 否则返回 null/*** 从对列头获取值, 不移除。

2024-02-04 22:40:40 1007

原创 【数据结构与算法】(4)基础数据结构 之 递归 单路递归、多路递归示例讲解 附单路递归示例(阶乘、反向打印字符、二分查找、冒泡排序、插入排序、约瑟夫问题)多路递归示例(斐波那契数列、汉诺塔、杨辉三角)

定义计算机科学中,递归是一种解决计算问题的方法,其中解决方案取决于同一类问题的更小子集recursionreturn;自己调用自己,如果说每个函数对应着一种解决方案,自己调用自己意味着解决方案是一样的(有规律的)每次调用,函数处理的数据会较上次缩减(子集),而且最后会缩减至无需继续递归内层函数调用(子集处理)完成,外层函数才能算调用完成原理假设链表中有 3 个节点,value 分别为 1,2,3,以上代码的执行流程就类似于下面的伪码return;思路确定能否使用递归求解。

2024-02-04 22:35:57 938

原创 【数据结构与算法】(3)基础数据结构 之 链表 单向链表、双向链表、循环链表详细示例讲解

定义在计算机科学中,链表是数据元素的线性集合,其每个元素都指向下一个元素,元素存储上并不连续可以分类为[^5]单向链表,每个元素只知道其下一个元素是谁双向链表,每个元素知道其上一个元素和下一个元素循环链表,通常的链表尾节点 tail 指向的都是 null,而循环链表的 tail 指向的是头节点 head链表内还有一种特殊的节点称为哨兵(Sentinel)节点,也叫做哑元( Dummy)节点,它不存储数据,通常用作头尾,用来简化边界判断,如下图所示随机访问性能根据 index 查找,时间复杂度O。

2024-02-04 22:22:18 1081

原创 【数据结构与算法】(2)基础数据结构 之 数组 动态数组、二维数组详细示例讲解与局限性原理及越界检查

定义在计算机科学中,数组是由一组元素(值或变量)组成的数据结构,每个元素有至少一个索引或键来标识arrayelementsorkey因为数组内的元素是连续存储知道了数组的数据起始地址BaseAddressBaseAddress,就可以由公式BaseAddressi∗sizeBaseAddressi∗size计算出索引iii元素的地址iii即索引,在 Java、C 等语言都是从 0 开始size。

2024-01-30 14:09:07 1363 2

原创 【数据结构与算法】(1)初识算法之什么是算法?什么是数据结构?二分查找代码示例

定义在数学和计算机科学领域,算法是一系列有限的严谨指令,通常用于解决一类特定问题或执行计算algorithm不正式的说,算法就是任何定义优良的计算过程:接收一些值作为输入,在有限的时间内,产生一些值作为输出。定义在计算机科学领域,数据结构是一种数据组织、管理和存储格式,通常被选择用来高效访问数据数据结构是一种存储和组织数据的方式,旨在便于访问和修改可以说,程序 = 数据结构 + 算法,它们是每一位程序员的基本功,下来我们通过对一个非常著名的二分查找算法的讲解来认识一下算法。

2024-01-30 13:58:47 951

原创 【React教程】(3) React之表单、组件、事件处理详细代码示例

根据 React 的设计,所有的 DOM 变动,都先在虚拟 DOM 上发生,然后再将实际发生变动的部分,反映在真实 DOM上,这种算法叫做。参考文档:https://reactjs.org/docs/typechecking-with-proptypes.html#default-prop-values。参考文档:https://reactjs.org/docs/refs-and-the-dom.html。参考文档:https://reactjs.org/docs/forms.html。

2024-01-29 22:29:34 1535 1

原创 【React教程】(2) React之JSX入门与列表渲染、条件渲染详细代码示例

HTML 语言直接写在 JavaScript 语言中,不加任何引号,这就是 JSX 语法。参考文档:https://reactjs.org/docs/conditional-rendering.html。参考文档:https://reactjs.org/docs/lists-and-keys.html。参考文档:https://reactjs.org/docs/dom-elements.html。JSX 允许直接在模板中插入一个 JavaScript 变量。开头),就用 JavaScript 规则解析。

2024-01-29 22:24:01 1146

原创 【React教程】(1) React简介、React核心概念、React初始化

React 是一个用于构建用户界面的渐进式 JavaScript 库本身只处理 UI不关系路由不处理 ajaxReact主要用于构建UI,很多人认为 React 是 MVC 中的 V(视图)。数据驱动视图React 由 Facebook 开发第一个真生意义上把组件化思想待到前端开发领域angular 早期没有组件化思想后来也被 Vue 学习借鉴了React 起源于 Facebook 的内部项目,因为该公司对市场上所有JavaScript MVC 框架。

2024-01-29 22:19:06 1073

原创 【JaveWeb教程】(39)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(12)拦截器Interceptor讲解

而由于我们当前是基于springboot开发的,所以放行之后是进入到了spring的环境当中,也就是要来访问我们所定义的controller当中的接口方法。在拦截器当中,我们通常也是做一些通用性的操作,比如:我们可以通过拦截器来拦截前端发起的请求,将登录校验的逻辑全部编写在拦截器当中。,表示拦截所有资源,而在配置拦截器时,不仅可以指定要拦截哪些资源,还可以指定不拦截哪些资源,只需要调用。首先我们先来看拦截器的拦截路径的配置,在注册配置拦截器的时候,我们要指定拦截器的拦截路径,通过。

2024-01-28 21:50:09 909 2

原创 【JaveWeb教程】(38)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(11)过滤器Filter讲解

而这个链上的过滤器在执行的时候会一个一个的执行,会先执行第一个Filter,放行之后再来执行第二个Filter,如果执行到了最后一个过滤器放行之后,才会访问对应的web资源。刚才通过浏览器的开发者工具,我们可以看到在后续的请求当中,都会在请求头中携带JWT令牌到服务端,而服务端需要统一拦截所有的请求,从而判断是否携带的有合法的JWT令牌。访问完web资源之后,按照我们刚才所介绍的过滤器的执行流程,还会回到过滤器当中来执行过滤器放行后的逻辑,而在执行放行后的逻辑的时候,顺序是反着的。

2024-01-28 21:44:15 1289

原创 【JaveWeb教程】(37)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(10)JWT令牌技术讲解

JWT全称:JSON Web Token (官网:https://jwt.io/)定义了一种简洁的、自包含的格式,用于在通信双方以json数据格式安全的传输信息。由于数字签名的存在,这些信息是可靠的。简洁:是指jwt就是一个简单的字符串。可以在请求参数或者是请求头当中直接传递。自包含:指的是jwt令牌,看似是一个随机的字符串,但是我们是可以根据自身的需求在jwt令牌中存储自定义的数据内容。如:可以直接在jwt令牌中存储用户的相关信息。

2024-01-28 10:51:44 1000

原创 【JaveWeb教程】(36)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(9)登录问题分析与会话控制技术讲解

什么是会话?在我们日常生活当中,会话指的就是谈话、交谈。在web开发当中,会话指的就是浏览器与服务器之间的一次连接,我们就称为一次会话。在用户打开浏览器第一次访问服务器的时候,这个会话就建立了,直到有任何一方断开连接,此时会话就结束了。在一次会话当中,是可以包含多次请求和响应的。比如:打开了浏览器来访问web服务器上的资源(浏览器不能关闭、服务器不能断开)第1次:访问的是登录的接口,完成登录操作第2次:访问的是部门管理接口,查询所有部门数据第3次:访问的是员工管理接口,查询员工数据。

2024-01-28 10:42:09 913

原创 【JaveWeb教程】(35)SpringBootWeb案例之《智能学习辅助系统》登录功能的详细实现步骤与代码示例(8)

在前面的课程中,我们已经实现了部门管理、员工管理的基本功能,但是大家会发现,我们并没有登录,就直接访问到了Tlias智能学习辅助系统的后台。登录服务端的核心逻辑就是:接收前端请求传递的用户名和密码 ,然后再根据用户名和密码查询用户信息,如果用户信息存在,则说明用户输入的用户名和密码正确。如果查询到的用户不存在,则说明用户输入的用户名和密码错误。在登录界面中,我们可以输入用户的用户名以及密码,然后点击 “登录” 按钮就要请求服务器,服务端判断用户输入的用户名或者密码是否正确。我们参照接口文档来开发登录功能。

2024-01-28 10:27:27 1138

原创 【JaveWeb教程】(34)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(7)配置文件的设置

如果要注入的属性非常的多,并且还想做到复用,就可以定义这么一个bean对象。在其他的类当中,我要想获取到注入进来的属性,我直接注入 bin 对象,然后调用 get 方法,就可以获取到对应的属性值了。前面我们一直使用springboot项目创建完毕后自带的application.properties进行属性的配置,那其实呢,在springboot项目当中是支持多种配置方式的,除了支持properties配置文件以外,还支持另外一种类型的配置文件,就是我们接下来要讲解的yml格式的配置文件。

2024-01-26 14:41:41 1502 2

原创 【JaveWeb教程】(33)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(6)修改员工的实现

在进行修改员工信息的时候,我们首先先要根据员工的ID查询员工的信息用于页面回显展示,然后用户修改员工数据之后,点击保存按钮,就可以将修改的数据提交到服务端,保存到数据库。关于员工管理的功能,还有两个需要实现新增和修改员工。当用户修改完数据之后,点击保存按钮,就需要将数据提交到服务端,然后服务端需要将修改后的数据更新到数据库中。参数格式:application/json。参数格式:application/json。参数格式:application/json。根据ID查询员工数据。

2024-01-26 14:33:30 1155

原创 【JaveWeb教程】(32)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(5)文件上传的实现

文件上传,是指将本地图片、视频、音频等文件上传到服务器,供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。在我们的案例中,在新增员工的时候,要上传员工的头像,此时就会涉及到文件上传的功能。在进行文件上传时,我们点击加号或者是点击图片,就可以选择手机或者是电脑本地的图片文件了。当我们选择了某一个图片文件之后,这个文件就会上传到服务器,从而完成文件上传的操作。

2024-01-26 14:28:07 1856 1

原创 【JaveWeb教程】(31)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(4)新增员工的实现

首先我们先完成"新增员工"的功能开发,再完成"修改员工"的功能开发。而在"新增员工"中,需要添加头像,而头像需要用到"文件上传"技术。代码开发完成后,重启服务器,打开Postman发送 POST 请求,请求路径:http://localhost:8080/emps。在新增用户时,我们需要保存用户的基本信息,并且还需要上传的员工的图片,目前我们先完成第一步操作,保存用户的基本信息。问题2:怎么在controller中接收json格式的请求参数?参数格式:application/json。

2024-01-26 14:14:34 1199

原创 【JaveWeb教程】(30)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(3)员工管理的实现

前面我们已经完了基础的分页查询,大家会发现:分页查询功能编写起来比较繁琐。查询总记录数指定页码的数据列表在Service当中,调用Mapper接口的两个方法,分别获取:总记录数、查询结果列表,然后在将获取的数据结果封装到PageBean对象中。大家思考下:在未来开发其他项目,只要涉及到分页查询功能(例:订单、用户、支付、商品),都必须按照以上操作完成功能开发结论:原始方式的分页查询,存在着"步骤固定"、"代码频繁"的问题解决方案:可以使用一些现成的分页插件完成。

2024-01-26 14:07:12 1007

原创 【JaveWeb教程】(29)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(2)部门管理的实现

在Spring当中为了简化请求路径的定义,可以把公共的请求路径,直接抽取到类上,在类上加一个注解@RequestMapping,并指定请求路径"/depts"。功能开发完成后,我们就可以启动项目,然后打开postman,发起GET请求,访问 :http://localhost:8080/depts。完成了查询部门的功能,我们也通过postman工具测试通过了,下面我们再基于前后端分离的方式进行接口联调。点击 “新增部门” 按钮,弹出新增部门对话框,输入部门名称,点击 “保存” ,将部门信息保存到数据库。

2024-01-26 14:04:39 1326

原创 【JaveWeb教程】(28)SpringBootWeb案例之《智能学习辅助系统》的详细实现步骤与代码示例(1)

前面我们已经讲解了Web前端开发的基础知识,也讲解了Web后端开发的基础(HTTP协议、请求响应),并且也讲解了数据库MySQL,以及通过Mybatis框架如何来完成数据库的基本操作。我们需要做的,就是参考接口文档完成后端功能的开发,然后结合前端工程进行联调测试即可。在前后端分离的开发模式中,前后端开发人员都需要根据提前定义好的接口文档,来进行前后端功能的开发。而在前后端进行交互的时候,我们需要基于当前主流的REST风格的API接口进行交互。我们按照前面学习的开发流程,开始完成功能开发。

2024-01-26 14:00:22 917

【JaveWeb教程】(10)Web前端基础:Vue快速入门 一篇文章教你轻松搞定Vue路由与打包部署 附详细示例代码案例

【JaveWeb教程】(10)Web前端基础:Vue快速入门 一篇文章教你轻松搞定Vue路由与打包部署 附详细示例代码案例,这篇博文的案例,没有看这篇博文,下载下来也是没什么用。

2024-01-07

【SpringBoot快速入门】(4)SpringBoot项目案例代码示例

【SpringBoot快速入门】(4)SpringBoot项目案例代码示例

2023-12-21

内网穿透Windows 64位Ngrok

保姆级教程-手把手教你如何快速实现内网穿透,外网也能轻松访问自已的内网Web服务器

2023-10-28

驾考题库在线考试微信小程序前端页面

是一个以微信web开发者工具进行开发的微信小程序demo源码 判断题型和单选题型 做题进度和对错显示

2023-10-26

房产交易类房源列表筛选小程序模板

房产交易类房源列表筛选小程序模板,二手房源信息查询列表,房源列表筛选条件,房源筛选小程序页面模板

2023-10-26

jQuery爆炸切换效果焦点图.rar

jQuery爆炸切换效果焦点图

2023-10-26

jQuery响应式无限滚动瀑布流特效.rar

jQuery响应式无限滚动瀑布流特效

2023-10-26

jQuery旋转木马轮播图特效.rar

jQuery旋转木马轮播图特效

2023-10-26

jQuery仿今日头条图片轮播代码.rar

jQuery仿今日头条图片轮播代码

2023-10-26

jQuery淘宝产品图片放大镜代码.rar

jQuery淘宝产品图片放大镜代码

2023-10-26

CSS3悬停百叶窗广告牌轮播特效.rar

CSS3悬停百叶窗广告牌轮播特效

2023-10-26

jQuery无缝轮播插件.rar

jQuery无缝轮播插件

2023-10-26

jQuery仿魅族大图轮播幻灯片特效.rar

jQuery仿魅族大图轮播幻灯片特效

2023-10-26

jQuery仿京东首页广告图片切换.rar

jQuery仿京东首页广告图片切换

2023-10-26

jQuery自适应焦点图片切换特效.rar

jQuery自适应焦点图片切换特效

2023-10-26

jQuery自适应三屏滚动代码

jQuery自适应三屏滚动代码

2023-10-26

JS带缩略图平滑滚动相册特效

JS带缩略图平滑滚动相册特效

2023-10-26

JS堆叠卡片轮播插件stackedCards

JS堆叠卡片轮播插件stackedCards

2023-10-26

Vue常见面试真题汇总

Vue常见面试真题汇总,一共有100多道面试题,基本覆盖了VUE的方方面面,是你取得offer的必备知识。

2023-10-25

四级六级专八考研英语JSON数据包

四级六级专八考研英语JSON数据包

2023-10-25

家居装修装饰微信小程序模板

一款简洁的室内家居装饰,家居设计公司,装修设计公司微信小程序前端模板。包含:主页、联系我们、个人中心、案例等等。

2023-10-25

MySql常用面试题及答案

MySql常用面试题的作用主要是为了考察求职者对数据库的掌握情况,包括对数据库理论知识、数据库操作、数据库设计等方面的了解。MySql面试题主要分为两大部分,第一大部分是数据库理论知识,主要考察对数据库基础概念和理论知识的了解;第二大部分是数据库操作和设计,主要考察对数据库操作、设计和优化的掌握程度。通过对这些问题的回答,可以更好地了解求职者对数据库的掌握程度和应用能力

2023-10-24

java+servlet的企业网站源码

java+servlet的企业网站源码

2023-10-24

js左侧分类菜单图片轮播代码

js左侧分类菜单图片轮播代码是一款适用于各种商城的主屏页面商品图片和导航菜单布局样式代码。布局和样式类似京东商城。可以用于学习和项目中直接使用。

2023-10-24

【小程序教程】零基础微信小程序开发及实例详解

【小程序教程】零基础微信小程序开发及实例详解

2023-10-12

音乐小程序).rar

微信音乐播放小程序,音乐信息通过网上找到的酷狗音乐的API获取,再通过php(thinkphp)在后台把数据重新封装了一下。比较适合初学者学习之用。(因为是网上找到的接口,不能保证这些借口一直可以用,如不能用,可自行在网上查找新的借口来替换)

2019-09-28

自已写的 自习室预约小程序微信

自习室预约小程序微信,实现了前台轮播 分类 自习室查看 在线预约 时间选择等。

2018-12-26

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除