自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(88)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 前后端分离SpringSecurity小Demo

使用SpringSecurity做权限控制的小demo

2022-02-22 11:27:39 696 3

原创 SpringBoot使用Validation组件进行参数校验

刚刚学习SpringBoot,最近在做一个小小项目,使用到了Validation对前端传来的参数进行校验,具体操作如下:使用Validation组件进行参数校验添加pom依赖<!--validation校验组件--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-validation</

2021-05-19 11:21:36 614

原创 LeetCode P338---比特位计数 两种方法实现(Java)

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/counting-bits著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个非负整数 num。对于 0 ≤ i ≤ num 范围中的每个数字 i ,计算其二进制数中的 1 的数目并将它们作为数组返回。示例 1:输入: 2输出: [0,1,1]示例 2:输入: 5输出: [0,1,1,2,1,2]第一种方法就是调用Java的APIJava的Integ

2021-03-03 11:10:04 213

原创 中级软件设计师(软考)笔记——系统开发基础

目录系统开发基础软件开发模型软件开发方法需求分析需求的任务需求的过程需求的分类应用的工具软件设计软件设计的任务与活动模块设计原则应用的工具软件测试测试McCabe复杂度软件维护可维护性因素决定软件维护类型文档1、开发文档2、产品文档(和用户有关)3、管理文档软件质量保证外部和内部质量软件过程改进-CMMI软件成熟度模型项目管理Gant图(进度管理)Pert图系统开发基础软件开发模型瀑布模型线性开发:软件计划→需求分析→软件设计→程序编程→软件测试→运行维护适用于解决需求比较明确的项目;优点是容

2021-01-25 09:45:09 301

原创 中级软件设计师(软考)笔记——数据结构与算法

目录数据结构与算法数组与矩阵线性表广义表树与二叉树二叉树的重要特性二叉树遍历树转二叉树查找二叉树哈夫曼树(最优二叉树)线索二叉树平衡二叉树图重要数据结构与算法数组与矩阵数组测存储地址计算一维数组a[n]: a[i] = a + i * len二维数组a[m][n]:按行存储: a[i][j] = a + (i * n + j) * len按列存储: a[i][j] = a + (j * m + i) * len矩阵计算在矩阵中下标分别为 i 和 j 的元素,对应的一维数组的

2021-01-25 09:43:18 799

原创 中级软件设计师(软考)笔记——知识产权与标准化

知识产权与标准化保护范围与对象法律法规名称保护对象及范围注意事项著作权法(版权)著作权——文学、绘画、摄影等作品1、不需要申请,作品完成即开始保护 2、绘画或摄影作品原件出售(赠予)著作权归原作者,原件拥有者有:使用权、展览权软件著作权法 计算机软件保护条例软件著作权 软件作品1、不需要申请,作品完成即开始保护 2、登记制度便于举证专利法专利权需要申请,专利权有效期是申请之日开始计算商标法商标权需要申请,核准之日起商标受保护反不正当竞争法

2021-01-25 09:41:47 323

原创 中级软件设计师(软考)笔记——程序设计语言与语言处理基础

程序设计语言与语言处理程序基础编译过程编译程序:将源程序编译成目标语言程序解释程序:直接解释执行的源程序或者将源程序翻译成某种中间代码后再加以执行二者区别:在编译方式下,机器上运行的是与源码程序等价的目标程序,源程序和编译程序都不再参与目标程序的执行过程;而在解释方式下,解释程序和源程序要参与到程序的运行中,运行程序的控制权在解释程序确定有限自动机与非确定有限自动机确定有限状态自动机对每个可能的输入只有一个状态的转移非确定有限状态自动机对每个可能的输入可以有多个状态转移,接受到输入时从

2021-01-25 09:40:22 367

原创 中级软件设计师(软考)笔记——面向对象技术

面向对象技术面向对象的基本概念对象:属性(数据)+ 方法(操作)+ 对象ID(唯一标识)类(实体类/控制类/边界类)继承于泛化:复用机制封装:隐藏对象的属性和实现细节, 仅对外公开接口多态:不同对象收到同样的消息产生不同的结果接口:一种特殊的类,他只有方法定义没有实现重载:一个类可以有多个同名参数类型不同的方法模板类消息和消息通信:消息是异步通信的面向对象设计的7大原则单一职责原则:设计目的单一的类开放-封闭原则:对扩展开放,对修改封闭李氏替换原则:子类可以替换父类依赖倒

2021-01-25 09:36:37 410

原创 中级软件设计师(软考)笔记——系统开发基础

目录系统开发基础软件开发模型软件开发方法需求分析需求的任务需求的过程需求的分类应用的工具软件设计软件设计的任务与活动模块设计原则应用的工具软件测试测试McCabe复杂度软件维护可维护性因素决定软件维护类型文档1、开发文档2、产品文档(和用户有关)3、管理文档软件质量保证外部和内部质量软件过程改进-CMMI软件成熟度模型项目管理Gant图(进度管理)Pert图系统开发基础软件开发模型瀑布模型线性开发:软件计划→需求分析→软件设计→程序编程→软件测试→运行维护适用于解决需求比较明确的项目;优点是容

2021-01-25 09:33:01 404

原创 中级软件设计师(软考)笔记——计算机网络与安全

目录计算机网络与信息安全OSI/RM七层模型☆TCP/IP协议族☆IP地址与子网划分子网划分网络规划与设计计算机网络分类网络接入技术对称加密技术非对称加密技术数字签名消息摘要PKI公钥体系网络安全-各个网络层的安全保障网络安全-主动攻击与被动攻击计算机病毒与木马计算机网络与信息安全OSI/RM七层模型层次名称主要功能主要设备及协议7应用层实现具体的应用功能POP3、HTTP、DNS、SMTP、Telnet6表示层数据的格式与表达、加密、压缩DHCP5会

2021-01-23 22:03:04 469

原创 中级软件设计师(软考)笔记——数据库系统

目录数据库系统1、三级模式-两层映射三级模式两层映射数据库设计过程2、E-R模型3、关系代数4、规范化理论规范化理论键范式模式分解SQL语言并发控制事务并发产生的问题封锁死锁完整性约束数据库系统1、三级模式-两层映射三级模式外模式(用户模式,视图级)—— 逻辑 | 是用户与数据库系统的接口,是用户用到的那部分数据的描述内模式(存储模式,文件级)—— 数据的存储 | 是数据物理结构和存储方式的描述概念模式(模式,表级) —— 反映数据库的结构及其联系 | 数据库中全部数据的逻辑结构和特征的描述

2021-01-23 21:59:55 720

原创 中级软件设计师(软考)笔记——操作系统

操作系统1、进程管理进程的概念进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。它由 程序块、数据块、进程控制块(PCB)组成运行的进程会随着作业运行正常和不正常结束而撤销☆进程与程序的区别:进程是程序的一次执行过程,没有程序就没有进程1、进程是动态的,程序是静态的 —— 程序是有序代码的集合,进程是程序的执行2、进程是暂时的,程序是永久的 —— 进程是一个状态变化的过程,程序可长久保存3、进程与程序的组成不同 —— 进程的组成包括程序、数据、PCB,程序是

2021-01-22 22:26:16 677

原创 中级软件设计师(软考)笔记——计算机与体系结构

计算机体系结构进制的转换1、R进制转十进制使用按权展开法 将R进制数的每一位数乘以它的权,然后相加,即可求得对应的十进制数值2、十进制转R进制使用短除法 整数部分:除R取余,知道商为0为止,将余数逆序排列 小数部分:乘R取整,直到小数部分为0,将整数顺序排列3、二进制转八进制与十六进制 二进制数转 八 或 十六 进制数是,从小数点向左和向右把每 3 或 4个二进制数分成一组, 直接写出每一组所代表的数值,小数点后不足位数补0

2021-01-22 22:19:06 419

原创 SSM+JWT实现前后端分离的token验证

SSM+JWT实现前后端分离的token验证前言什么是JWT基于Token的验证流程JWT的Token实现后端部分前端部分测试项目完整地址前言以前写的web项目都是没有前后端分离的,都是写的jsp,或者说前后端分离也没有使用token,都是使用session,后来发现这种使用session的方式非常不好,而且在前后端分离的情况下也不太适用,所以学习一下基于JWT的token验证。什么是JWTJson web token (JWT), 是为了在网络应用环境间传递声明而执行的一种基于JSON的开放标准

2020-12-20 00:08:56 2629 8

原创 SSM整合Shiro小Demo

写在前面自己在B站上看了一个shiro的视频,花了三四个小时速成了一下shiro,大概了解了一下shiro的流程,然后自己做了一个小Demo,记录一下。正文话不多说,直接上代码首先是使用Maven搭建一下SSM的工程,做好准备工作(如果有小伙伴不懂怎么使用Maven搭建SSM项目的话,可以参考我之前的博文https://blog.csdn.net/weixin_44215175/article/details/108642595)接着就是先引入shiro的相关依赖包,Maven的话在pom.x

2020-12-14 23:27:07 211

原创 使用MyBatis-PageHelper + vue实现分页

使用MyBatis-PageHelper实现分页,前端使用vue文章目录使用MyBatis-PageHelper实现分页,前端使用vuePageHelper分页1、Maven添加依赖:2、在MyBatis的配置文件中添加插件3、编写获得PageInfo对象的接口4、测试接口前端使用Pagination组件1、导入Pagination的内容2、在页面中使用Pagination实现效果:PageHelper分页附上MyBatis-PageHelper地址:https://github.com/pageh

2020-11-15 21:33:18 1244 2

原创 Java反射---剖析类,对类进行剖析

Java反射文章目录Java反射Class——代表字节码的类1、Class对象2、获取Class对象的三种方法Constructor——代表构造方法的类通过class对象创建实例对象Method——代表方法的类Field——代表属性的类Class——代表字节码的类1、Class对象在Java世界里,一切皆对象。从某种意义上来说,Java有两种对象:实例对象和Class对象。每个类运行时的类型信息就是用Class对象表示的。它包含了与类有关的信息,我们的实例对象就通过Class对象来创建的。每一个

2020-10-13 19:43:38 120

原创 SSM入门小项目----学生信息管理系统

SSM入门小项目----学生信息管理系统学习了SSM后,自己想动手写个小项目,巩固一下。选择了比较简单的学生信息管理系统,项目比较简单,包括的功能有:登录、学生信息的增删改查、分页(前端实现)。本项目前后端分离,由于本人较菜,所以前端是直接拿别人写好的来修改使用的(已征得原作者同意),前端原文链接:https://blog.csdn.net/qq_43198568/article/details/104432485完整代码在GitHub上:https://github.com/Fjz-Kuroko/S

2020-09-17 15:51:22 11246 40

原创 使用Maven搭建SSM框架 IDEA

使用Maven搭建SSM框架,并测试使用使用Maven搭建SSM框架(IDEA)1. 创建Maven工程2. 使用自己安装的Maven3. 加入Maven依赖jar<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler.source>1.7</maven.compiler.source&gt

2020-09-17 14:44:16 1387

原创 LeetCode P216---组合总和III 递归回溯解决

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/combination-sum-iii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。找出所有相加之和为 n 的 k 个数的组合。组合中只允许含有 1 - 9 的正整数,并且每种组合中不存在重复的数字。说明:所有数字都是正整数。解集不能包含重复的组合。示例 1:输入: k = 3, n = 7输出: [[1,2,4]]示例 2:输入: k = 3, n

2020-09-11 12:42:10 158

原创 LeetCode P109--有序链表转换二叉搜索树 递归实现

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/convert-sorted-list-to-binary-search-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个单链表,其中的元素按升序排序,将其转换为高度平衡的二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定的有序链表: [-10, -3, 0, 5, 9],一个可能的答案是:[

2020-08-18 17:20:23 125 1

原创 LeetCode P733-图像渲染 深度优先搜索、广度优先搜索

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/flood-fill著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。有一幅以二维整数数组表示的图画,每一个整数表示该图画的像素值大小,数值在 0 到 65535 之间。给你一个坐标 (sr, sc) 表示图像渲染开始的像素值(行 ,列)和一个新的颜色值 newColor,让你重新上色这幅图像。为了完成上色工作,从初始坐标开始,记录初始坐标的上下左右四个方向上像素值与初始坐标

2020-08-16 09:29:17 126 3

原创 LeetCode P100--相同的树 深度优先搜索遍历解决

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/same-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定两个二叉树,编写一个函数来检验它们是否相同。 如果两个树在结构上相同,并且节点具有相同的值,则认为它们是相同的。示例 1:输入:1 1/ \ / \2 3 2 3 [1,2,3], [1,2,3]输出: true示例 2:输入:1

2020-08-07 08:35:59 125

原创 CSS 实现图片翻转

今天学到一个CSS的小知识,记录分享一下:就是使用CSS来实现图片翻转-------把鼠标放在图片上时可以翻转图片,移开后又恢复原状话不多说,直接上代码:<!DOCTYPE html><html> <head> <meta charset="utf-8"> <title>CSS 实现图片翻转效果</title> <style> body{ min-height: 100vh; pad

2020-07-31 21:32:52 2812

原创 Java Web 简单实现验证码

今天学习JavaWeb简单实现了验证码,记录一下。。验证码展示出来为一张图片,其中包括验证码本身(数字)以及干扰线条,使用画笔绘制。话不多说,直接展示代码:绘制验证码的img.jsp<%@ page import="java.awt.*" %><%@ page import="java.util.Random" %><%@ page import="java.awt.image.BufferedImage" %><%@ page import="java

2020-07-29 11:08:59 1504

原创 LeetCode P104--二叉树的最大深度

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/maximum-depth-of-binary-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。说明: 叶子节点是指没有子节点的节点。示例:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \

2020-07-28 08:34:45 99

原创 LeetCode P167--两数之和II - 输入有序数组

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/two-sum-ii-input-array-is-sorted著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个

2020-07-20 13:26:22 55

原创 LeetCode P35--搜索插入位置

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/search-insert-position著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。示例 1:输入: [1,3,5,6], 5输出: 2示例 2:输入: [1,3,5,6], 2输出: 1示例 3:

2020-07-17 20:14:42 85

原创 LeetCode P349-两个数组的交集、P350-两个数组的交集II

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/intersection-of-two-arrays著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。349、给定两个数组,编写一个函数来计算它们的交集。示例 1:输入: nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入: nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]说明:

2020-07-15 07:19:52 85

原创 JavaWeb EL表达式

在普通的JavaWeb项目中,会经常在jsp中嵌入java代码,这样会使得jsp代码混乱,可读性查。所以就产生了EL表达式。传统jsp嵌套java代码都是把java代码放入 <%%> 中,页面同时有HTML代码时就显得很混乱,使用EL表达式可以很好解决此问题。下面看一下EL表达式的用法。EL表达式有点“.”操作符有“[]”操作符两个操作符各有其优缺点,点操作符使用方便而“[]”操作符功能强大下面进行代码展示:先在后端Servlet上设置一些属性,供给前端jsp获取:其中的Stu

2020-07-11 22:25:17 152

原创 LeetCode P122--买卖股票的最佳时机 II 动态规划实现

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。类似题目:https://blog.csdn.net/weixin_44215175/article/details/107243764给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更

2020-07-10 10:09:55 579

原创 LeetCode P121--买卖股票的最佳时机

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/best-time-to-buy-and-sell-stock著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释:

2020-07-10 09:58:58 196

原创 JavaWeb 入门 简单上传、下载

JavaWeb上传下载今天自学JavaWeb学到了上传和下载,在这里做一下记录。首先创建一个新JavaWeb项目,先运行一下,然后在目录out\artifacts\web_war_exploded\下新建一个文件夹 res(用来存放上传后的文件),如图所示然后上传需要先导入两个jar包,分别是:commons-fileupload-1.3.1.jar 版本可不同commons-io-2.4.jar 版本可不同两个jar包可以到Apache官网下载,也可以到Maven库去下载,提供一个

2020-07-09 22:59:16 242

原创 LeetCode 面试题 16.11--跳水板 动态规划、数学方法

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/diving-board-lcci著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。你正在使用一堆木板建造跳水板。有两种类型的木板,其中长度较短的木板长度为shorter,长度较长的木板长度为longer。你必须正好使用k块木板。编写一个方法,生成跳水板所有可能的长度。返回的长度需要从小到大排列。示例:输入:shorter = 1longer = 2 k = 3输出

2020-07-08 08:50:02 180

原创 LeetCode P112--路径总和 递归实现

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/path-sum著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。**给定一个二叉树和一个目标和,判断该树中是否存在根节点到叶子节点的路径,这条路径上所有节点值相加等于目标和。**说明: 叶子节点是指没有子节点的节点。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 /

2020-07-07 08:27:50 175

转载 LeetCode P63--不同路径II

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/unique-paths-ii著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。文章参考LeetCode官方题解:https://leetcode-cn.com/problems/unique-paths-ii/solution/bu-tong-lu-jing-ii-by-leetcode-solution-2/一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记

2020-07-07 00:01:28 116

原创 JavaWeb 入门 最简单的学生信息管理系统

最近在学习JavaWeb,整理一下。写了个很简单的学生信息管理系统。系统只包括简单的对学生信息进行增删改查。系统采用三层设计模式。先展示一下系统的业务处理逻辑图:逻辑如图所示,获取前端用户交互信息,逐步调用其他层,实现“增删改查”业务。项目主要几个Jsp页面如下:1.首页,展示学生信息2.点击学号超链接,进入学生详细信息页面3.新增学生页面页面都比较简单,只是几个输入框而已。。接下来看一下项目文件结构:这里对项目目录结构进行简单说明;dao:存放数据访问层的Java文件en

2020-07-06 23:54:55 12422 22

原创 LeetCode P108--将有序数组转换为二叉搜索树 递归实现

来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/convert-sorted-array-to-binary-search-tree著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。将一个按照升序排列的有序数组,转换为一棵高度平衡二叉搜索树。本题中,一个高度平衡二叉树是指一个二叉树每个节点 的左右两个子树的高度差的绝对值不超过 1。示例:给定有序数组: [-10,-3,0,5,9],一个可能的答案是:[0,-3,9,-1

2020-07-03 08:44:55 111

原创 LeetCode P70--爬楼梯

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/climbing-stairs著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。假设你正在爬楼梯。需要 n 阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1 阶 + 1 阶2 阶示例 2:输入: 3输出: 3解释:

2020-07-02 08:50:27 97

原创 LeetCode 面试题39--数组中出现次数超过一半的数字 两种方法解答

题目来源:力扣(LeetCode)链接:https://leetcode-cn.com/problems/majority-element著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。你可以假设数组是非空的,并且给定的数组总是存在多数元素。示例 1:输入: [1, 2, 3, 2, 2, 2, 5, 4, 2]输出: 2示例 2:输入: [3,2,3]输出: 3示例 3:输入: [2,2,1,

2020-06-10 09:11:05 478

ThreeTieSample.rar

运用JavaWeb技术搭建的一个简单的项目--学生信息管理,内容比较少,只涉及简单的增删改查。项目运用三层设计模式进行搭建,虽说内容少而简单,但是用来入门还是可以的,而且后期可继续进行扩展。

2020-07-06

SaleTP5.rar

使用ThinkPHP5搭建的一个购物商城。商城包括前端、后端设计,包括前台展示、购买、发货、评价等步骤;后台包括管理商品、回复评论、发货等操作。资源包括商城源码、数据库设计文件。

2020-07-02

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

TA关注的人

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