自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何理解 Java 中的动态代理

动态代理就是在程序的运行期,动态的创建目标对象的代理对象,并对目标对象中的方法进行功能性增强的一种技术。【注】在原有功能的基础上进行功能增强和升级(功能扩展)的模式是装饰器模式在生成代理对象的过程中,目标对象不变,代理对象中的方法是目标对象方法的增强方法。可以理解为运行期间,对象中方法的动态拦截,在拦截方法的前后执行功能操作。

2023-11-26 21:55:04 218 1

原创 浅克隆?深克隆?

克隆是指创建一个对象的副本,使副本具有与原始对象相同的属性和状态(即复制出来和原对象一模一样的副本)在计算机编程中,克隆是一种常见的操作,用于复制数据、对象或数据结构,以便在不影响原始数据的情况下进行操作、修改或分发。

2023-11-12 19:10:46 206

原创 个人博客系统(Spring Boot、Spring MVC、MyBatis)

本篇博客到这儿就结束了,很开森能和你一起学习吖!简单总结一哈昂,这里主要实现了整个项目的基础模块部分的功能,由于篇幅等各方面的因素呢,咱们开头提到的其他功能将作为拓展功能后面陆续呈现出来~期待还能和你一起学习哦~

2023-10-07 20:52:16 1745 5

原创 了解 Bug

通过合理的 Bug 级别划分和描述,开发团队和测试团队可以更好地理解和处理 Bug,制定更合理的修复计划,确保系统的稳定性和可用性。同时,这也有助于评估软件的质量和用户体验,为产品的持续改进和优化提供重要依据。Bug 描述的要求为:分类准确、叙述简洁、步骤清楚、有实例、复杂 Bug 有据可查(截图或视频、日志或其他形式附件)。就是存在于产品(文档、数据、程序等)之中的,那些我们不希望或者不能够接受的。Bug 的生命周期,也称为 Bug 的处理管理流程,是从 Bug。此外,还有一些其他的状态,如。

2024-02-29 14:56:13 1161

原创 基于API文档的搜索引擎

这里我们实现一个简易版的搜索引擎,主要实现 Java API 文档的搜索,你是不是好奇为什么会选择Java API文档呢?揭晓答案的时刻到了!了解了选择 Java API 文档的原因,接下来,我们一起进入搜索引擎实现的学习~

2024-02-29 14:23:19 1138

原创 快速搞懂 SPI

SPI( Service Provider Interface ),是 JDK 内置的一种服务提供发现机制( JDK 本身就带着的一个功能)。SPI 允许服务提供者在运行时动态地将实现类注入到系统中,从而实现组件的可插拔性和扩展性。通俗来说,就是我们定义了一套标准,别人去实现,然后在程序执行的时候,根据这个约定我们来发现其实现的具体的内容,来进行执行。要实现数据库的增删改查操作,但数据库由不同的公司或厂商去做,不同的公司、不同厂商 实现 CRUD 的方式是不同的。

2023-11-30 00:08:14 158

原创 如何理解反射

反射( Reflection )是在运行时动态获取类信息,并且操作类或对象的能力。Java 中,反射允许我们在程序运行时检查和操作类、方法、字段等元数据,而不需要在编译时确定这些信息。简单来说,反射就是允许在运行时拿到和操作某个类所有属性和方法的技术手段。

2023-11-30 00:07:48 35

原创 BIO、NIO、AIO 区别

(1)IO ( ' I ' 表示 ' input ' ,' O ' 表示 ' output ' )是指与外部组件(如文件、网络连接、控制台等)进行数据交换的过程。栗子:有时在做项目的时候需要去接收一个文件,比如个人中心进行上传头像,一定是接收到了一个文件流,然后再将文件流保存到本地,这就是 IO (从网络端拿到了数据流,然后将数据流持久化到当前的磁盘);(2) IO 在程序当中是很常见的,用于读取和写入数据;

2023-11-05 11:35:24 68 3

原创 开发模型和测试模型归纳篇

哈喽,今天一起来对常见的开发模型和测试模型进行一个简要归纳,在此之前呢,先一起回顾一个知识点哈,哪个知识点呢?就是咱们软件的生命周期:软件生命周期是指从软件产品的设想开始到软件不再使用而结束的时间。如果把软件看成是有生命的事物,那么软件的生命周期可以分成 6 个阶段,即需求分析、计划、设计、编码、测试、运行维护。浅浅回忆起来后,可以进入正题了,那对于模型,我们需要重点掌握其特点、优点、缺点、适用场景;接下来,一起对常见的开发模型和测试模型进行梳理。

2023-11-02 23:00:16 565 3

原创 测试用例篇

测试用例是为了实施测试而向被测试的系统提供的一组集合,这组集合包含:测试环境、操作步骤、测试数据、预期结果等。它的作用其实就是为了测试是否满足某个特定需求。测试用例是指导测试进行的依据。

2023-11-01 17:51:23 432 3

原创 项目实现“定时发布文章”功能

这里不是使用咱们单纯的 ArticleInfo 对象了,而是在这个的基础上加了定时发布时间 postTime 这一字段的,所以咱们创建一个 ArticleInfoVO 实体类,使其继承自 ArticleInfo 实体类。a. 实现 mapper.ArticleMapper(此处和发布文章使用的是同一个,因为无论是定时发布文章还是即时发布文章,对于数据库而言都是添加一篇文章的操作,主要的不同,在咱们的 controller 层)到这里,定时发布文章功能就实现咯,下次见~b. 对应的 xml 实现。

2023-10-21 23:32:27 299 3

原创 项目注册页面实现图片验证码功能

哈喽~本篇博客主要和大家一起学习如何在我们项目注册和登录页面实现图片验证码功能,会一个另一个是一样的思路,这里我们实现注册页面的该项功能,这里使用到 hutool 工具去生成验证码.

2023-10-21 23:29:15 110 1

原创 项目实现“用户多次登录,账号冻结”功能

若触发账号冻结,将会有一个冻结时间,此处为个人项目,为项目效果展示考虑,设置为 10 s ,在 AppVariable 类里面添加全局变量 FREEZE_TIME = 10;d. 实现 controller.UserController( controller 层)当用户输入的用户名存在,并且密码输错 3 次以上(包含 3 次),就会触发账号冻结功能。c. 实现 service.UserService( service 层代码)a. 先实现 mapper.UserMapper( mapper 层)

2023-10-21 23:25:30 177

原创 将 Session 持久化到 Redis 上

哈喽 ~ 很高兴见到你!话不多说,开始学习~本篇是针对个人博客系统功能的扩展之一,在完成了咱们个人博客系统的基础模块之后,就可以在原来的基础上进行功能的扩展了,基础模块在相对应的博客中已经比较清晰的分享过了,这里就不再进行回顾了哈,此篇的任务就是将个人博客系统项目中登录的 Session 信息持久化到 Redis 上,好了,开始正题!

2023-10-21 23:19:54 95

原创 IDEA创建一个Spring Boot项目

IDEA中Spring Boot项目的创建

2023-08-31 14:10:44 243

空空如也

空空如也

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

TA关注的人

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