自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(38)
  • 收藏
  • 关注

原创 Java基础知识面试题

(类是一种定义对象的蓝图或模板)1.Java SE: Java 平台标准版,Java 编程语言的基础,它包含了支持 Java 应用程序开发和运行的核心类库以及虚拟机等核心组件。Java SE 可以用于构建桌面应用程序或简单的服务器应用程序。2.Java EE:Java 平台企业版,建立在 Java SE 的基础上,包含了支持企业级应用程序开发和部署的标准和规范(比如 Servlet、JSP、EJB、JDBC、JPA、JTA、JavaMail、JMS)。

2025-01-09 22:54:18 821

原创 Java项目中集成Github登录

要在你的 Java 后端系统中集成 GitHub 的第三方登录功能,通常可以通过 OAuth 2.0 协议实现。这是 GitHub 提供的官方认证方式,它允许你通过 GitHub 登录你的应用,并获取用户的基本信息。

2025-01-08 16:36:05 817

原创 Hibiscus辅助开发框架介绍使用

Hibiscus 是一个轻量级的 Java 开发辅助框架,专注于简化开发流程,提升开发效率。无论是代码生成、数据库管理、Redis 操作还是性能监控,Hibiscus 都能为开发者提供丰富的工具和高效的解决方案。本文将为大家介绍如何快速入门 Hibiscus 框架,并通过演示项目了解其核心功能及使用场景。

2025-01-08 16:25:45 1409

原创 高并发设计 -- 获取热门话题例子

这是一个获取热门话题的列表,这个时候问题来了,它的访问量会比较高,但是呢,他要根据热度进行排序,也就是说,他是可能会经常变化的,那么缓存合适吗,添加缓存应该是那些变化比较小的吧,但是它的访问量如何解决呢?目前响应实际时间大概是186ms - (目前数据库的数据大概在5w)对于这样一个场景肯定是需要优化的,那么也就是需要控制频率了,因为目前的这个业务对于实时性有一定的要求,但是并非是股票类的强一致性和实时性的业务,那么这里我们可以设置它的刷新时间在30s左右的样子(根据业务动态调整)

2025-01-01 16:03:39 1018

原创 MyBatis面试题总结

虽然 MyBatis 解析 xml 映射文件是按照顺序解析的,但是,被引用的 B 标签依然可以定义在任何地方,MyBatis 都可以正确识别。原理是,MyBatis 解析 A 标签,发现 A 标签引用了 B 标签,但是 B 标签尚未解析到,尚不存在,此时,MyBatis 会将 A 标签标记为未解析状态,然后继续解析余下的标签,包含 B 标签,待所有标签解析完毕,MyBatis 会重新解析那些被标记为未解析的标签,此时再解析 A 标签时,B 标签已经存在,A 标签也就可以正常解析完成了。

2024-12-18 14:18:15 962

原创 解决缓存穿透的代码[最佳实践版]

缓存穿透说简单点就是大量请求的 key 是不合理的,根本不存在于缓存中,也不存在于数据库中。这就导致这些请求直接到了数据库上,根本没有经过缓存这一层,对数据库造成了巨大的压力,可能直接就被这么多请求弄宕机了。(key对应的数据在数据源并不存在,每次针对此key的请求从缓存获取不到,请求都会到数据源,从而可能会压垮数据源(mysql),若黑客利用此漏洞进行攻击可能压垮数据库。

2024-11-04 21:35:50 1034

原创 后端消息推送方案方案(轮询,长轮询,websocket,SSE)

长轮询是一种改进的轮询方式。客户端发出请求后,服务器保持连接(会阻塞请求)直到有新的数据产生才返回响应。一旦有新数据,服务器响应客户端,并在客户端处理完数据后,客户端立即再次发起请求,维持类似“推”的效果。

2024-10-22 18:45:17 1632

原创 Java刷题知识总结(一)

CMS收集器是一种以获取最短回收停顿时间为目标的收集器,它是基于标记清除算法实现的,它的运作过程相对于其他收集器来说要更复杂一些,整个过程分为四个步骤,包括:初始标记、并发标记、重新标记、并发清除。选择D,servlet处于服务器进程中,它通过多线程方式运行其service方法,一个实例可以服务于多个请求,并且其实例一般不会销毁,而CGI对每个请求都产生新的进程,服务完成后就销毁,所以效率上低于servlet。Vector与ArrayList一样,也是通过数组实现的,不同的是Vector支持线程的同步。

2024-09-23 22:51:19 963

原创 Maven学习(零基础到面试)

因为不同编译器创建出来的项目会有不同,eclipse创建出来的项目在idea中无法直接使用。maven是一款项目管理和构建工具,它及用户项目对象模型(POM)的概念,通过一小段描述信息来管理项目的构建。可以通过一些maven指令快速进行项目的清理,编译,测试,打包,发布的操作。如果使用 Maven 构建产生的构件(例如 Jar 文件)被其他的项目引用,那么该构件就是其他项目的依赖。文件,我们可以定义项目的坐标、项目依赖、项目信息、插件信息等等配置。2.统一项目结构:提供标准,统一的项目结构。

2024-08-28 20:48:28 1226

原创 健韵坊(详细项目实战二)Spring系列 + Vue3

根据异常信息 S3 API Requests must be made to API port,这表明您的 Minio 服务器配置了一个专用的端口用于处理 S3 API 请求,而您当前使用的端口可能不是正确的 API 端口。您当前使用的端口是 9001,这是用于 Minio 控制台的端口,并不接受 S3 API 请求。ok,再出一期,把下面的的需求给完成以下(其实主要也就是视频模块的东西),顺便再用一些比较有意思的技术试试。

2024-08-18 23:56:05 764

原创 健韵坊(详细项目实战一)Spring系列 + Vue3

之前在使用coding的时候,它会定时推送一个一周总结的东西,总结一周下来的总代码量,完成的需求,修复的bug这些。那么今天就在用户模块这里模仿出一个这样的功能。根本上来说是要用定时任务框架,定时自动执行某行Java代码,这里可以使用SpringTask在原来的包结构下创建一个job包,并创建WeekSummary类1.引入依赖//导入Spring-context的jar包2.启动类添加注解@EnableScheduling开启任务调度3.自定义定时任务类(编写一个简单类)

2024-08-16 22:57:26 1132 2

原创 go语言实战--基于Vue3+gin框架的实战Cetide网项目(讲解开发过程中的各种踩坑)

if err!= nil {panic(err)这里来解释一下吧,1.workDir, _ := os.Getwd():获取当前工作目录,os.Getwd()返回当前进程的工作目录路径,下划线_忽略可能的错误。2.viper.SetConfigName("application"):设置配置文件的名称为application,不包括文件扩展名。3.viper.SetConfigType("yml"):设置配置文件的类型为yaml,意味着Viper将解析.yml或.yaml格式的配置文件。

2024-06-08 14:47:03 1676 3

原创 项目优化方案之---实现邮箱用户登录

之前的项目中我写的基于SpringBoot和Vue的全栈项目已经实现了基本的用户接口开发,不过其代码的功能单一,而且写的也是有不少漏洞(基本就像刚接手的代码*山一样)那之后的几篇文章都来分享一下如何优化项目(每一章都独立讲方案,不必看之前的)这里来添加一种登录方法,用邮箱来登录(实际思路跟手机号登录是差不多的,而且都是要借助一些第三方的工具实现)操作之前先来梳理一下实现流程:1.用户填写其邮箱(这里我只用QQ邮箱实现)2.点击发送验证码按钮(ok,此处需要发送请求到后端进行一系列操作Todo)

2024-06-03 20:36:31 1535

原创 前后端实战项目(Spring系列加上vue3)前后端篇(五)(解决TypeError: Cannot read properties of undefined (reading ‘push‘报错问题)

注释或删掉之前的定义方法,此处使用import router from '@/router'即可做到(主要是模块加载的顺序问题,使用之前的方式是无效的)那么到现在,项目的最基础的crud部分算是解决了,这一部分就结束了,后面就不这样搭建了,而是根据模块,配合其他技术来实现(也不能只是crud,hhh)。在main.js中,引入pinia,创建pinia实例,并调用vue应用实例的use方法使用pinia。继之前的前后端代码之后,下面来最后完善一下登录以及用户模块的剩下部分。最后在用户中心这里使用就可以了。

2024-05-28 11:56:29 711

原创 超详细的前后端实战项目(Spring系列加上vue3)前后端篇(四)(一步步实现+源码)

兄弟们,继昨天的代码之后,继续完成最后的用户模块开发,昨天已经完成了关于用户的信息编辑页面这些,今天再完善一下,从后端这边开始吧,做一个拦截器,对用户做身份校验,

2024-05-27 17:53:15 2226

原创 C语言PTA练习题(7-1 判断成绩的等级,7-2 字符类别判断,7-3 判断闰年,7-4 判断质数,7-5 统计符合条件的数字,7-6 回文数个数,7-7 分解质因子)

某课程规定,测试成绩s,若 90 ≤ s ≤ 100,则等级为A;若 80 ≤ s < 90,则等级为B;若 70 ≤ s < 80,则等级为C;若 60 ≤ s < 70,则等级为D;若 0 ≤ s < 60,则等级为E;其他成绩为 ERR。现输入一个表示成绩的实数,输出其对应的等级。

2024-05-26 16:38:21 923

原创 C语言PTA练习题:三角形类别,输入三角形三条边,求面积,四则计算器,猴子吃桃

输入三个整数,以这三个数为边长,判断是否构成三角形;若不能输出"no",若构成三角形,进一步判断它们构的是:锐角三角形或直角三角形或钝角三角形.分别输出"ruijiao","zhijiao","dunjiao"。

2024-05-26 16:02:23 703

原创 超详细的前后端实战项目(Spring系列加上vue3)前端篇+后端篇(三)(一步步实现+源码)

(因为要统一结果输出样式,这边写了一个结果封装类)/*** 统一响应结果封装类*///1 成功 , 0 失败//提示信息//数据 datareturn msg;r.code = 1;return r;r.code = 1;return r;r.code = 0;return r;

2024-05-25 17:21:37 3142

原创 超详细的前后端实战项目(Spring系列加上vue3)前端篇(二)(一步步实现+源码)

好了,兄弟们,继昨天的项目之后,开始继续敲前端代码,完成前端部分昨天完成了全局页面的代码,和登录页面的代码,不过昨天的代码还有一些需要补充的,这里添加一下。

2024-05-24 23:45:01 2509

原创 超详细的前后端实战项目(Spring系列加上vue3)前端篇(一)(一步步实现+源码)

大家不要一开始写前端就直奔优美的”可跳转“页面,这边先整体规定一个向后端发请求的工具request.js//导入axios//定义前缀//来一个响应拦截器result=>{//如果不为0则表示失败alert(result.data.message||'出现错误')//异步的状态转化成失败的状态},err=>{alert('服务异常');//异步的状态转化成失败的状态。

2024-05-23 21:11:54 5285 1

原创 Java集合类面试题

为了能让 HashMap 存取高效,尽量较少碰撞,也就是要尽量把数据分配均匀。我们上面也讲到了过了,Hash 值的范围值-2147483648 到 2147483647,前后加起来大概 40 亿的映射空间,只要哈希函数映射得比较均匀松散,一般应用是很难出现碰撞的。但问题是一个 40 亿长度的数组,内存是放不下的。所以这个散列值是不能直接拿来用的。用之前还要先做对数组的长度取模运算,得到的余数才能用来要存放的位置也就是对应的数组下标。这个数组下标的计算方法是“ (n - 1) & hash”。

2024-05-17 12:59:57 619

原创 JVM知识点及面试题补充

栈(每个线程运行时所需要的内存)(又叫线程栈(因为每个线程都分配空间存储局部变量,和方法调用)):放置局部变量等,(只要开始运行,就会从栈中挖一小块运行,放置该线程中的局部变量,每个线程中,运行到main方法时就也会挖下一块栈,给main方法下的局部变量,用到其中的方法,也会挖一小块空间,放置方法内的局部变量,而方法中挖的这一块空间就叫做一块栈帧内存区域(一个方法对应一块栈帧内存区域),方法结束之后,直接把占用的空间直接划去(直接把这块内存删了))执行那些包含在被载入类的方法中的指令。

2024-05-16 13:14:05 657

原创 Redis面试题总结5.3

redis是一款开源的NoSQL数据库,开源将数据以键值对的方式进行存储,与其他数据库不同的是,redis是通过内存进行数据存储的,也因此redis的读写性能非常高,被广泛应用于分布式缓存方向。缓存就是数据交换的缓冲区,是临时存储数据的区域,一般读写性能较高。简单来说,如果一个 key 对应的 value 所占用的内存比较大,那这个 key 就可以看作是 bigkey。比如String 类型的 value 超过 1MB,就可认为是bigkey布隆过滤器主要是用于检索一个元素是否在一个集合中。

2024-05-03 17:56:03 1008 1

原创 JVM知识总汇(JVM面试题篇5.1)

程序计数器是用来记录下一条代码(字节码)的地址的。(个人理解)因为多线程机制,一个程序在运行时,可能半路上就去执行另一个线程了,若是另一个线程执行完之后呢,就可以通过程序计数器记录的地址,继续执行上一个线程的代码,而不用重新开始,这样能大大提高执行效率。(资料理解)java虚拟机对于多线程是通过线程轮流切换并且分配线程执行时间。在任何的 一个时间点上,一个处理器只会处理执行一个线程,如果当前被执行的这个线程 它所分配的执行时间用完了【挂起】。处理器会切换到另外的一个线程上来进行 执行。

2024-05-01 22:12:54 1139

原创 Lombok插件详解(包含版本问题)

Lombok是一个实用的Java类库,能够通过注解的形式自动生成构造器,getter/setter等,并且可以自动化生成日志变量,减少 Java 代码中的冗余和样板代码,简化Java开发,提高效率(setting,plugins中搜索Lombok插件(一般会自带))

2024-04-06 21:26:04 4513 1

原创 java之登录校验(过滤器,拦截器)

用户每次登录都会下发JWT令牌,此外,后续的每次请求中,(都需要在请求头header中携带到服务器,请求头的名称为token!),值为登陆时下发的JWT令牌。如果检测到用户未登录就会发出报错信息。

2024-04-02 22:37:16 1336 1

原创 卷积神经网络学习(搭建模型)

【代码】卷积神经网络学习(搭建模型)

2024-03-01 20:43:28 1462 1

原创 卷积神经网络基础入门知识

人工智能的一个重要的分支为机器学习,而机器学习中核心的就是神经网络,神经网络的隐藏层若是足够深,则可以称为深度神经网络,深度学习包括有深度神经网络,卷积神经网络,循环神经网络。池化: 由于一些图片的特征特别多,如果要扫描和大量卷积,这将会使得计算量空前巨大,因此,引入池化,将得到的特征图进行缩小(主要有最大池化和平均池化两种,一般是用最大池化)全连接层: 将最终池化后的像素铺成一排,乘以相应的权重并且相加,由此得到某事物的概率,还可以有多层(输入层,隐藏层,输出层。(也不一定有池化操作。

2024-02-26 19:59:35 368 1

原创 Javaweb的三层架构

前面声明bean的四大注解,要想要生效,还需要被组件扫描注解@ComponentScan扫描,@ComponentScan注解虽然没有显式配置,但是实际上已经包含在了启动类声明注解@SpringBootApplication中,默认扫描的范围时启动类所在包及其子包。3.DAO层(数据访问层(持久层)):负责数据访问操作(也叫Mapper层),包括数据的增删改查,可以是数据库,文件,或者其他的Api接口。@Autowired注解,默认是按照类型进行的,如果存在多个相同类型的bean,将会报出错误。

2024-02-23 17:14:57 1259

原创 Swagger介绍及应用

使用Swagger只需要按照它的规范去定义接口以及接口相关的信息,就可以做到生成接口文档,以及在线接口调试页面。官网:https://swagger.io/注意:Yapi是设计阶段所使用的工具,管理和维护接口,而Swagger实在开发阶段使用的框架,帮助后端开发人员做后端的接口测试。Knife4j 是为Java MVC框架集成Swagger生成的Api文档的增强解决方案。

2024-02-21 17:34:56 469

原创 Redis进阶(二)

高并发用户注册 Cookie和Session回顾 Cookie可以在浏览器(或者说客户端)中保存数据,重要的使用场景就是判断用户是否登录,以辨别用户身份 无状态:无状态是指浏览器发出的每次请求都是独立的,相互完全没有关联的(http协议设计成无状态就比较简单,适应性更强。) 实现有状态的web:在实际使用场景中,web应用是需要有状态的,必须先登录才能下单购物,同一个页面中,会因是否登录而有不同状态。那么,如何实现有状态的web呢? 思路一:1.升级http协议,变成

2024-02-20 10:11:23 895

原创 Redis进阶(一)

Redis简介 定义 Redis是现在最受欢迎的NoSQL数据库之一,Redis是一个含多种数据结构,支持网络,基于内存,可选持久性的键值对存储数据库。(Redis也符合按照数据结构来组织,存储,和管理数据的仓库的定义,也可以说是一种数据库。) NoSQL是指Not Only SQL,泛指非关系型数据库,而我们常用的MySQL,SqlServer都是关系型数据库,这些数据库一般用来存储重要信息,应对普通的业务没有问题,但是随着互联网的高速发展,传统的关系型数据库在应付超大规模,超大

2024-02-20 10:06:10 842

原创 Redis入门基础总结

Redis是一个基于内存的key-value(键值对)结构数据库优势:基于内存存储,读写性能高。适合存储热点数据(热点商品,资讯,新闻)Redis用于补充Mysql数据库,而非取代,两者共存Redis中文网: https://www.redis.net.cn/

2024-02-20 00:34:00 991

原创 鸿蒙——ArkTS学习

例:.width()宽度 .height()高度 .backgroundColor()背景色 .fontSize()字体大小 .fontWeight()字体粗细 .fontColor()字体颜色 space设置间隙。如:let names: string[]=['小明','小李','小王'](注意,数组指定的类型和存储的数据类型必须要一致,否则就会报错。name: '一号',

2024-02-19 21:52:13 2501 1

原创 创建Vue项目方法

方法一:在图形化界面中创建,输入 vue ui,在Vue项目管理器中处理。方法二:在命令行中输入 vue create vueproject。在目标文件夹出输入cmd打开。在目标文件夹出输入cmd打开。输入vue ui即可打开。

2024-02-06 15:56:13 387 1

原创 MySQL基础学习思维导图

MySQL: 查询优化 LIKE查询 语法:SELECT * FROM table_name WHERE condition LIKE condition; SQL LIKE子句中,我们使用百分号%字符来表示任意字符,如果没有使用任何%,那么此时的LIKE就相当于= ‘%A%’表示含有A,%A表示以A结尾,A%表示以A开头 AND和OR 语法:SELECT * FROM table_name WHERE conditionA AND/OR condtionB

2024-01-31 21:13:30 1300

原创 Python爬虫常见问题----出现AttributeError: ‘NoneType‘ object has no attribute ‘xpath‘报错

此处我在修改了错误的html格式后就可以成功运行了,如果html没错之后还是无法运行可以尝试使用其他html解析库,如BeautifulSoup,它可以处理一些不规范的html文本。之所以会出现这种情况,说明是etree.HTML解析失败了,这可能是由于需要解析的内容html的格式不正确或者不完整导致的,也可能是由于解析器不支持该html格式。print(type(et))后,返回的类型即为NoneTpye说明获取到的对象是None,而None是没有xpath属性,所以会报错。

2024-01-29 11:26:33 2013

原创 Python爬虫入门教程(一)

是针对xml的表达式语言,可从xml中直接提取数据而我们要获取的html属于是xml的子集,那么xpath自然也可以获取到html的内容了。

2024-01-28 20:31:59 1354

前端初始化资源包初始化前端

.....................

2024-10-01

基于JS制作的2048小游戏

这是一个基于前端html,css,Js制作的一个2048小游戏.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................

2024-06-08

CeTide全栈项目初始前端代码

Cetide的初始化前端代码,做了一登录注册页,主搜索页面,文章管理页面,已经用户个人中心

2024-05-26

空空如也

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

TA关注的人

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