- 博客(73)
- 收藏
- 关注
原创 Java 8 实战 书籍知识点散记
Java编译器会从上下文(目标类型)推断出用什么函数式接口来配合Lambda表达式,这意味着它也可以推断出适合Lambda的签名,因为函数描述符可以通过目标类型来得到。这样做的好处在于,编译器可以了解Lambda表达式的参数类型,这样就可以在Lambda语法中省去标注参数类型。Lambda表达式允许你直接以内联的形式为函数式接口的抽象方法提供实现,并把整个表达式作为函数式接口的实例(具体说来,是函数式接口一个具体实现的实例)。Lambda表达式同样也可以使用局部变量,但是使用存在一些限制。
2025-01-22 23:18:59
337
原创 GXUOJ-算法-第三次作业(Huffman树、最小生成树、最短路径、小西加油、并查集应用)
Huffman树、最小生成树、最短路径、小西加油、并查集应用
2024-12-29 23:56:24
327
原创 GXUOJ-算法-第二次作业(矩阵连乘、最长公共子序列、0-1背包问题、带权区间调度)
p[i-1]*p[k]一个的矩阵,第二个子矩阵链乘结果是p[k]*p[j]一个的矩阵。当我们计算(Ai*···*Ak)和(Ak*···Aj)这两个子矩阵链乘结果相乘时,根据矩阵乘法运算量的计算公式,这两个子矩阵链乘结果相乘所需的乘法次数就是。就相当于计算两个矩阵相乘,其中第一个子矩阵链乘结果是。
2024-12-28 16:15:35
487
原创 汇编DOSBox 如何使文件可以运行
这个文件Assembly的路径绑定是通过 图片中这个来进行改变的。2.2 将生成的exe文件移动到Assembly里面。1.在vscode编写(其他也可以)2.点击ML615中的DOS。2.1在命令行中输入命令。ml 文件名.asm。ml 文件名.obj。
2024-12-17 11:03:08
353
原创 【SpringBoot】Day13 AOP基础
首先先说下AOP优点:AOP英文全称:Aspect Oriented Programming(面向切面编程、面向方面编程),其实说白了,面向切面编程就是面向特定方法编程。AOP的优势:减少重复代码提高开发效率维护方便通过一个案例来引入AOP的使用的情况之一。比如我们这里有一个项目,项目中有许多业务功能,我们想要同级每一个业务功能所耗时间的多少。那么对于传统的做法,我们是在业务开始的时候获取当前时间,在业务结束的时候再次获取当前时间。最后两个时间差就是我们业务所运行的时间。
2024-12-15 11:20:25
658
原创 【SpringBoot】Day13-01 事物管理
在处理事情中,我们需要将一系列事物作为一个原子事物,即要么全部执行成功,要么全部执行失败。这就是事务,事务是一组操作的集合,它是一个不可分割的工作单位。事务会把所有的操作作为一个整体,一起向数据库提交或者是撤销操作请求。所以这组操作要么同时成功,要么同时失败。比如我们在网上购物的时候,有时候进入了支付页面,但是并没有付款。这我们也不希望,到时候既没有成功买到了东西,又白白付了钱吧。这就是事务的应用。
2024-12-15 10:34:33
993
1
原创 【SpringBoot】Day12-16 异常处理
出现异常时,我们的Mapper-Service-Controller三层架构会层层往上抛出异常。如果Controller层也没有对异常做出处理的话,那么最终会抛给框架,框架就会返回一个JSON格式的数据,里面封装的是错误信息。那么我们该怎么解决呢?
2024-12-12 16:56:39
474
原创 解决黑马程序员视频中String转JSON的时效性过期问题
看黑马程序员【SpringWeb】的视频中的Day12-12 中的登录校验功能,黑马程序员提供的代码已经不适用了。因为阿里巴巴的fastjson代码进行了更改,已经是fastjson2了。因此需要对xml文件更改,导入的包进行更改和JSONObject.toJSONString()改为JSON.toJSONString()下面给出更新后的代码。
2024-12-11 00:00:00
429
原创 【SpringBoot】Day12-09 Filter
注意导入的包是 import javax.servlet.Filter;其中 init和destory都是默认实现的因为Filter是JavaWeb三大组件当中的,所以需要使用 WebFilter注释 ,并且启动类上还要加上注解@ServletComponentScan这其中最重要的就是放行的方法,Filter是过滤器进行拦截,可是如果你不放行,则没有办法去访问资源。(并且doFIlter也是chain的唯一的一个方法,分别将对应的请求和回复,返回出去)
2024-12-10 00:38:11
800
原创 关于回文字串的解法
所以中心点不能只有单个字符构成,还要包括两个字符,比如上面这个子串 abab,就可以有中心点 ba 扩展一次得到,所以最终的中心点由 2 * len - 1 个,分别是 len 个单字符和 len - 1 个双字符。比如对一个字符串 ababa,选择最中间的 a 作为中心点,往两边扩散,第一次扩散发现 left 指向的是 b,right 指向的也是 b,所以是回文串,继续扩散,同理 ababa 也是回文串。abba 有7个中心点,分别是 a、b、b、a、ab、bb、ba。为什么不可能是三个或者更多?
2024-12-10 00:00:00
262
原创 关于删除有序数组中的重复项问题的几种方法
这个方法通过两个嵌套的循环来遍历数组,每次遇到重复项时就将后续的元素向前移动一位。但是,这种方法的时间复杂度为O(n^2),因为它涉及到大量的元素移动操作,所以在处理大数据集时效率较低。
2024-12-09 00:00:00
775
原创 【力扣】647.回文子串
中心扩展法这是一个比较巧妙的方法,实质的思路和动态规划的思路类似。比如对一个字符串 ababa,选择最中间的 a 作为中心点,往两边扩散,第一次扩散发现 left 指向的是 b,right 指向的也是 b,所以是回文串,继续扩散,同理 ababa 也是回文串。这个是确定了一个中心点后的寻找的路径,然后我们只要寻找到所有的中心点,问题就解决了。中心点一共有多少个呢?看起来像是和字符串长度相等,但你会发现,如果是这样,上面的例子永远也搜不到 abab,想象一下单个字符的哪个中心点扩展可以得到这个子串。
2024-12-09 00:00:00
234
原创 【SpringBoot】Day11-09 参数配置化
对于这些配置信息是直接硬编码,写死在java程序中的,存在几个问题:如果这些参数发生变化了,就必须在源程序代码中改动这些参数,然后需要重新进行代码的编译,将Java代码编译成class字节码文件再重新运行程序。(比较繁琐)如果我们开发的是一个真实的企业级项目, Java类可能会有很多,如果将这些参数分散的定义在各个Java类当中,我们要修改一个参数值,我们就需要在众多的Java代码当中来定位到对应的位置,再来修改参数,修改完毕之后再重新编译再运行。(参数配置过于分散,是不方便集中的管理和维护)
2024-12-08 18:45:00
417
原创 【SpringBoot】Day12-03-登录校验-会话计数
所谓登录校验,指的是我们在服务器端接收到浏览器发送过来的请求之后,首先我们要对请求进行校验。先要校验一下用户登录了没有,如果用户已经登录了,就直接执行对应的业务操作就可以了;如果用户没有登录,此时就不允许他执行相关的业务操作,直接给前端响应一个错误的结果,最终跳转到登录页面,要求他登录成功之后,再来访问对应的数据。
2024-12-08 00:00:00
391
原创 【SpringBoot】Day11-10 yml文件配置
前面我们一直使用springboot项目创建完毕后自带的application.properties进行属性的配置,那其实呢,在springboot项目当中是支持多种配置方式的,除了支持properties配置文件以外,还支持另外一种类型的配置文件,就是我们接下来要讲解的yml格式的配置文件。
2024-12-07 15:52:34
1027
2
原创 【SpringBoot】Day11-06 阿里云 文件上传
accessKeySecret:阿里云账号AccessKey对应的秘钥。objectName:对象名称,在Bucket中存储的对象的名称。引入阿里云OSS上传文件工具类(由官方的示例代码改造而来)accessKeyId:阿里云账号AccessKey。修改UploadController 层代码。bucketName:Bucket名称。在pom.xml中导入这两项。filePath:文件路径。可以通过下面链接,配置环境。
2024-12-07 01:15:00
393
原创 【SpringBoot】Day11-03 文件存储
开发中比较少用如果直接存储在服务器的磁盘目录中,存在以下缺点:不安全:磁盘如果损坏,所有的文件就会丢失容量有限:如果存储大量的图片,磁盘空间有限(磁盘不可能无限制扩容)无法直接访问为了解决上述问题呢,通常有两种解决方案:自己搭建存储服务器,如:fastDFS 、MinIO使用现成的云服务,如:阿里云,腾讯云,华为云。
2024-12-07 00:00:00
398
原创 【SpringBoot】Day11-01 新增员工
接口文档规定:请求路径:/emps请求方式:POST请求参数:Json格式数据响应数据:Json格式数据问题1:如何限定请求方式是POST?问题2:怎么在controller中接收json格式的请求参数?@RequestBody //把前端传递的json数据填充到实体类中。
2024-12-05 00:00:00
202
原创 【SpringBoot】Day10-10 删除员工
foreach>是 MyBatis 提供的一个非常有用的动态 SQL 元素,它允许你遍历一个集合(如 List、Set 或数组),并在生成的 SQL 语句中插入相应的值。这对于构建包含 IN 子句的 SQL 查询特别有用,但也可以用于其他需要重复某些模式的情况。
2024-12-04 14:57:08
228
原创 【SpringBoot】Day10-09 动态SQL-XML文件
1.XML映射文件的名称与Mapper接口名称保持一致,并且将XML映射文件和Mapper接口放置在相同包下(同包同名)- 在项目开发当中,一般都是一个接口对应一份儿映射配置文件;2.XML映射文件的namespace{命名空间}属性与Mapper接口的全限定名{包名+接口名}一致;3.XML映射文件中SQL语句的id与Mapper接口中的方法名一致,并保持返回类型一致。
2024-12-04 10:55:18
1336
原创 【SpringBoot】Day10-8 分页查询插件PageHelper
因为分页查询是我们经常需要使用的功能并且步骤固定,所以可以使用插件来简化代码。
2024-12-02 12:52:37
306
原创 【SpringBoot】Day10-07 员工分页查询
@Select("select * from emp limit #{start},#{pageSize} ") 将总记录数和数据列表封装成PageBean对象
2024-12-02 12:10:30
572
原创 【SpringBoot学习】Day10-02 增删查
这两种方法是等价的,并且@GetMapping里面的源码其实也是@RequMapping返回。前段在请求的时候,传递的Json格式的请求参数,后端服务端该用实体类接受,@RequestBody 将 request 的json 转为实体类给后端。通过注解 @PathVarivale 来获取路径参数。@RequestBody 将响应的实体类转为json发送给前端。但是需要再实体类前面加上一个 @RequestBody 来接收。{ } ,为占位符,类似C语言的 %通过获取到的 id 删除部门。
2024-12-02 10:43:22
534
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人