自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 mybatis-plus 基本使用

首先,pom.xml 中添加MyBatis-Plus的依赖</</</</

2024-04-26 20:30:24 78

原创 【代码随想录】栈与队列

PriorityQueue 的底层是大根堆或小根堆,插入、删除元素时能够自动调堆,将最大 / 最小元素一直保持在队首。默认是小根堆,创建 PriorityQueue 时可以指定比较器来构建大根堆或其他调堆规则。保证队头是最大元素的索引。

2024-04-10 16:48:03 329 1

原创 Java 数据类型转换

注意事项:对于 Boolean.parseBoolean() 方法,只有字符串 “true”(忽略大小写)会被转换为true,其他任何值(包括"false")都会被转换为 false。数组:虽然数组本身没有重写 toString() 方法,但 Java 提供了 Arrays 类,该类的静态方法 toString()可以将数组转换为字符串。集合框架中的类(如 List、Set、Map 的实现类)通常也重写了 toString() 方法,以提供集合内容的字符串表示。String ➡ 包装类型 Integer。

2024-04-09 20:05:14 424

原创 Java 双端队列

由于 Deque 是一个双端队列,它既可以作为队列使用(遵循 FIFO 先进先出原则),也可以作为栈使用(遵循 LIFO 后进先出原则)First():移除并返回双端队列的第一个元素,若队列为空,返回 null。contains(Object o):如果队列包含指定元素,返回 true。Last():移除并返回队列的最后一个元素,若队列为空,返回 null。Last():返回此队列的最后一个元素,若队列为空,返回 null。First():返回队列的第一个元素,若队列为空,返回 null。

2024-04-09 11:05:53 282

原创 Java 中 String 的常用方法

(1)连接 List 集合中的元素。构造方法(new 出来)(2)连接数组中的元素。

2024-04-07 21:45:59 722

原创 【代码随想录】哈希表

为什么用下面的代码代替 equals() 方法来判断两个 Map 的内容是否相等时,会有一个测试用例不通过?用了哈希表,时间超限,据说用排序+双指针思路简单且可行,后面刷到双指针的题再完成这个方法的题解。跟三数之和一样,也是排序+双指针,刷到双指针再做。思路:将四个数组分为两组处理。

2024-04-06 21:08:00 691

原创 Java 元素排序(数组、List 集合)

List 集合中的元素是 Integer、Float、Double、String 类型时,都可以使用 Collections.sort() 来对元素进行排序。可以先将数组元素存入 List 集合,然后集合元素逆序,最后将集合元素写回原数组。(List 集合元素逆序的讲解在下面)Collections.sort() 默认对元素进行升序排序,若需要降序排序,就需要提供一个比较器。

2024-04-06 16:57:19 461

原创 Java 读取用户输入

使用 next() 或 nextLine()之前通常需要考虑是否需要用 nextLine() 来消耗掉换行符,nextInt()、nextFloat()、nextDouble() 则无需考虑。注意:如果之前调用了 nextInt() 或其他读取数值类型的方法,而没有先调用 nextLine() 来消耗掉换行符,next() 可能会立即返回,相当于在控制台输入时直接回车。

2024-04-06 14:50:24 308

原创 Java 中的 List 集合

List 是 Java 集合框架中的一个接口,它表示一个有序的集合(序列),允许存储重复的元素。List 接口提供了许多方法来操作列表中的元素。

2024-04-05 20:14:28 769

原创 Java 中的 Set 集合

boolean add(E e):向集合中添加指定的元素。如果集合已包含该元素,则添加操作不会改变集合,并返回 false。如果集合包含指定的元素,则移除它,并返回 true。否则,返回 false。extends E> c):将指定集合中的所有元素添加到此集合中。> c):移除此集合中那些也包含在指定集合中的所有元素。> c):如果此集合包含指定集合中的所有元素,则返回 true。boolean contains(Object o):如果此集合包含指定的元素,则返回 true。此调用返回后,集合将为空。

2024-04-05 19:55:49 192

原创 Java 中的 Map集合

在 Java 中,Map 接口是 Java 集合框架的一部分,它存储键值对(key-value pairs)。Map 接口有许多常用的方法,用于添加、删除、获取元素,以及检查 Map 的状态。

2024-04-05 17:41:59 678

原创 【代码随想录】链表

另一种解法:先遍历两个链表,得到它们的长度。然后,让长链表的指针先走它们长度差的步数,接着两个指针同时向前遍历,直到它们相遇或都为 null。另一种解法:快慢指针。

2024-04-05 15:58:00 373

原创 【代码随想录】数组

暴力解法,超时,测试用例通过率:18 / 21。

2024-04-03 19:49:49 349

原创 【力扣hot100】128-最长连续序列、283-移动零

由于每个数字只会被遍历一次(无论是添加到HashSet中还是作为序列的起点被检查),所以整个算法的时间复杂度仍然是O(n)。

2024-03-31 21:38:55 167

原创 【力扣hot100】两数之和、字母异位词分组

【49】字母异位词分组。

2024-03-29 22:25:39 192

原创 2.【Vue3】Vue 基本使用——局部使用Vue

现在需要将 “hello vue3” 这样一个字符串渲染到页面上进行展示。接下来学习如何使用 Vue 来完成该需求。Vue 使用的数据都需要在调用 CreateApp() 函数时,在 {} 中声明。可以在 {} 中写一个 data() 函数,通过 return 返回需要的数据。数据有了之后,需要将数据渲染到页面上。可以在 div 内部声明 h1 标签,在 h1 内部通过插值表达式渲染到页面上进行展示。插值表达式就是两层 {},内部写的是数据的键名。

2024-01-28 23:41:44 1584

原创 1.【Vue3】前端开发引入、Vue 简介

Vue 是一款用于构建用户界面的渐进式的 JavaScript 框架。(官方:https://cn.vuejs.org/)举个例子:购物网站上会展示各种各样的数据,这些数据都不是写死的,需要访问后台接口去获取这些数据,假如我们现在通过 ajax 异步请求拿到了这些数据,那这些数据如何才能展示到页面上呢?此时就可以用 Vue 来处理。Vue 提供了非常便捷的方式,可以根据数据来渲染页面。

2024-01-27 18:24:47 1050 1

原创 7.【SpringBoot3】项目部署、属性配置、多环境开发

项目完成后,需要部署到服务器上。SpringBoot 项目需要经过编译打包生成一个 jar 包(借助打包插件 spring-boot-maven-plugin),再将该 jar 包发送或拷贝到服务器上,然后就可以通过执行来运行 jar 包。服务器的系统可能是 windows、mac、linux。

2024-01-27 00:46:01 1206

原创 6.【SpringBoot3】登录优化-redis

在之前实现的登录接口中,用户登录成功后会生成一个令牌响应给浏览器,之后浏览器访问其他接口时,都要携带该令牌,接受拦截器的检验,如果令牌有效就放行,允许访问后续接口,否则拦截该请求。但是,现在存在一个问题,如果密码泄露了,修改密码再次登录时,原有令牌是应该失效的,现在的代码还做不到这一点,拿着修改密码之前的令牌仍然可以访问其他接口,这显然是不合理的。如何才能做到让令牌主动失效呢?此时就需要用到 redis。

2024-01-26 18:45:09 1001 2

原创 5.【SpringBoot3】文件上传

在用户更换头像或发布文章时,需要携带一个图片的 url 地址,该 url 地址是当用户访问文件上传接口,将图片上传成功后,服务器返回的地址。所以,后台需要提供一个文件上传接口,用来接收前端提交的文件数据,并且返回文件的访问地址。这三个要素满足后,用户就可以选择要上传的文件,点击提交按钮,最终把文件内容提交给服务器。当服务器接收到该请求后,如果服务器中的代码是使用 SpringMVC 框架编写的,我们就可以在方法上声明一个 MultipartFile 类型的参数,用来接收上传的文件内容。

2024-01-25 17:31:12 1343

原创 4.【SpringBoot3】文章管理接口开发

对于 Article 实体类中的 state 属性,前面所学的知识已经不能完成对它的校验了。此时,需要借助 Validation 完成自定义校验。

2024-01-24 17:33:03 908

原创 3.【SpringBoot3】文章分类接口开发

数据库表字段和实体类属性:在数据库表中,create_user 来自于 user 表中的主键 id,是用来记录当前文章分类是哪个用户创建的,有了这个字段,将来用户在查看、修改、删除时就只能操作自己创建的分类。

2024-01-23 17:25:00 1108

原创 2.【SpringBoot3】用户模块接口开发

JWT 全称:JSON Web Token,即用于 web 领域的基于 json 格式的令牌(https://jwt.io/)定义了一种简洁的、自包含的格式,用于通信双方以 json 数据格式安全的传输信息。上面是一个 JWT 令牌字符串,通过两个将字符串分成了三部分,每个字串对应 token 令牌中的一部分。第一部分: Head(头),是由一段 json 字符串编码得来,该 json 字符串记录两个信息,alg 是加密算法(防篡改),type 是令牌类型。第二部分: Payload(有效载荷)

2024-01-21 22:26:39 1212

原创 1. SpringBoot3 基础

在 SpringBoot 之前,通过 Spring Framework 整合各种子项目,来构建 Spring应用程序:传统方式构建 spring 应用程序,需要挨个导入依赖,项目配置繁琐:SpringBoot 的特性,用于简化开发:(1) 起步依赖:本质上就是一个 Maven 坐标,整合了完成一个功能需要的所有坐标。

2024-01-17 18:32:01 970

原创 刷新环境变量,不用重启电脑

在“我的电脑”->“属性”->“高级”->“环境变量”中编辑环境变量后,如何在不重启电脑的情况下,使环境变量立刻生效呢?(1) win+r,cmd 打开命令行。(3) 关闭命令行,重新打开。(test可以是任意字符(串))此时环境变量修改已经生效。

2024-01-14 00:03:41 714

原创 4. SSM 整合

前面已经学习了 Mybatis、Spring 和 SpringMVC 三个框架,现在要把这三个框架整合在一起,完成业务功能开发,整合流程如下:(1) 新建 module(2) 选择模板(3) module 名称和路径(4) 补充项目结构(5) 新建必要的包Spring 配置类不检查 bean 自动装配的语法:如果后端返回的数据类型很杂乱,前端解析数据会很麻烦。所以后端要能够返回统一的数据类型。所以就想能不能将返回结果的数据进行统一,思路为:创建结果模型类,将返回的结果数据封装到 data 属性中;将

2023-03-09 23:22:03 233 1

原创 3. SpringMVC Rest 风格

REST(Representational State Transfer),表现形式状态转换,它是一种软件架构风格。传统方式一般是一个请求 url 对应一种操作,这样做不仅麻烦,也不安全,因为会程序的人读了请求 url 地址,就大概知道该 url 实现的是什么操作。查看 REST 风格的描述,会发现请求地址变简单了,并且只看请求 URL 并不能轻易猜出该 URL 的具体功能。但是问题也随之而来,一个相同的 url 地址既可以是新增也可以是修改或者查询,该如何区分该请求到底是什么操作呢?

2023-02-13 13:38:31 479

原创 2. SpringMVC 请求与响应

在 UserController 和 BookController 中,都有 save 方法,若两者的请求映射路径都为 “/save”,则两者的访问路径就都成了 http://localhost/save,会冲突。问题是解决了,但是每个方法前面都需要进行修改,写起来比较麻烦而且还有很多重复代码,如果 “/user” 后期发生变化,所有的方法都需要改,耦合度太高。简单数据类型一般处理的是参数个数比较少的请求,如果参数比较多,那么后台接收参数的时候就比较复杂,这个时候可以使用 POJO 数据类型(实体类)。

2023-02-12 20:53:16 475 2

原创 1. SpringMVC 简介

SpringMVC 与 Servlet 功能等同,均属于 Web 层开发技术。SpringMVC 是 Spring 框架的一部分。SpringMVC 简介请求与响应REST 风格SSM 整合(注解版)拦截器SpringMVC 是处于 Web 层的框架,所以其主要的作用就是用来接收前端发过来的请求和数据然后进行处理,并将处理的结果响应给前端,所以如何处理请求和响应是 SpringMVC 中非常重要的一块内容。

2023-02-11 19:32:34 624

原创 5. Spring 事务

在数据层或业务层保障一系列的数据库操作同成功、同失败。数据层有事务我们可以理解,为什么业务层也需要处理事务呢?举个简单的例子:转账业务会有两次数据层的调用,一次是转入者加钱,一次是转出者减钱;把事务放在数据层,加钱和减钱就有两个事务;如果先加钱后减钱,且加钱之后其他地方出现异常,就会出现加钱成功减钱失败的结果。即没办法保证加钱和减钱同时成功或者同时失败;这个时候就需要将事务放在业务层进行处理。上述代码运行时,会执行转账操作,Tom 的账户减少 100,Jerry 的账户增加 100。

2023-02-09 23:45:08 204

原创 4. Spring 之 AOP

AOP(Aspect Oriented Programming):面向切面编程,是一种编程范式,指导开发者如何组织程序结构。作用:在不惊动原始设计的基础上为其进行功能增强。如果有相同的功能需要在很多地方加的话,可以选择 AOP。Spring 理念:无入侵式/无侵入式找到程序中共性的部分,抽出来,写一个通知类;在通知类中定义一个方法,这个方法叫通知,方法里面是共性的功能;并不是所有方法都要执行这些通知,要把执行这些通知的方法找出来,定义成切入点;

2023-02-09 22:16:36 372

原创 3. Spring 整合 Mybatis、JUnit

(3) sqlMapConfig.xml:mybatis 核心配置文件。(1) pom.xml:添加相关依赖。(5) 接口方法与 SQL 注解。

2023-02-04 21:09:22 889

原创 2. Mybatis 完成增删改查

如上图所示产品原型,里面包含了品牌数据的等功能,而这些功能其实就是对数据库表中的数据进行 CRUD 操作。接下来就使用 Mybatis 完成品牌数据的增删改查操作。查询所有数据查看详情条件查询修改全部字段修改动态字段删除一个批量删除。

2023-02-01 22:38:49 263

原创 1. Mybatis基础

MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发。持久层:操作数据库的那些代码。JavaEE三层架构:表现层(页面展示)、业务层(逻辑处理)、持久层。框架:是一个半成品软件,是一套可重用的、通用的、软件基础代码模型。在框架的基础之上构建软件编写更加高效、规范、通用、可扩展。

2023-02-01 18:24:38 305

原创 2. Spring 注解开发

Component("bookDao") //相当于配置了bean,并指定了id public class BookDaoImpl implements BookDao {} }//相当于配置了bean,但未指定id //这里还没有 bookDao 的依赖注入,后面会讲到 @Component public class BookServiceImpl implements BookService {} }--1. 开启context命名空间-->

2023-01-28 21:25:01 1029

原创 1. Spring 基础入门

(1)下面的第二个 bean 中,value 被赋的值不是 user666,而是系统的环境变量中的 username(系统的环境变量优先级高)。在上节中,第三方 bean 的 property 标签中的 value 是写死的,除了这种方式,还可以从 properties 文件中加载 value。bean 一般通过构造方法创建,构造方法常常是 public 的,该构造方法用 private 修饰也可,原因在于反射机制,后面细讲。(4) 初始化 IoC 容器,通过容器获取 bean 中的对象,并调用对象方法。

2023-01-27 22:57:29 770

原创 11. Java 常用类

包装类:八种基本数据类型对应的引用类型即包装类,包装类有了类的特点,就可以调用类中的方法。各个包装类的继承和实现关系:(1)Boolean(2)Character(3)Byte、Short、Integer、Long、Float、Doubleidea 中显示上面关系图的方法(以 Integer 为例):(1)在 Integer 上右键,依次选择 Diagram ➡ Show Diagram(2)进去之后就能看到下图(3)若想添加其他类,就选中相关父类,按下空格,输入要添加的类。如添加 Byt

2022-10-29 22:35:05 782 2

原创 机器学习知识点积累

(Robust):模型对数据变化的容忍度。数据出现较小偏差时,只对模型输出产生较小的影响,则称模型是鲁棒的。举例:当旁边有人搭话时,司机的开车能力。:衡量训练集上训练出的模型,在测试集上的效果。举例:司机开车行驶在不同道路的能力。不管是分类,还是回归,其本质是一样的,都是对输入做出预测,并且都是有监督学习。

2022-10-17 20:59:45 620

原创 1. yolo 前置知识

反映到下图中,就是连线以下的面积(注意:两个点之间取最大值,最终面积如第二幅图所示)。答案是不行,因为精度和召回率在很多问题上会呈现 “一个变高了,另一个就变低” 的现象。即本来是负例,判断成正例。即本来是正例,判断成负例。目标是找出所有的女生。所以,IOU 越高说明蓝框和红框重合度越高,预测值越接近真实值,检测效果越好。即本来是正例,判断成正例。即本来是负例,判断成负例。结果:从班级中选择了50人,其中20人是女生,还错误的把30名男生挑选出来了。:预测为正的样本中有多少是真正的正样本(找得对)。

2022-09-17 19:35:42 742

原创 8. Python 面向对象

私有成员变量:变量名以__开头(2个下划线)私有成员方法:方法名以__开头(2个下划线)私有成员无法被。

2022-09-16 12:20:00 4105 5

数据库-实验2-数据查询.docx

数据库-实验2-数据查询

2020-06-30

Linux_C函数库参考手册.pdf

包含了有关Linux的C语言函数用法,解析超详细,还配有实例和运行结果。特别适合小白使用,遇到不懂使用方法的函数可以直接查询,避免全网搜浪费时间。

2020-05-27

空空如也

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

TA关注的人

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