自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 在 Spring Boot 中格式化 LocalDateTime

【代码】在 Spring Boot 中格式化 LocalDateTime。

2025-03-05 10:48:30 384

原创 Semaphore 与 线程池 Executor 有什么区别?

Semaphore是Java 并发编程(JUC)中一个重要的同步工具,它的作用是控制对特定资源的并发访问。通过Semaphore,你可以限制同时访问某些资源的线程数量。它主要用于解决多线程访问共享资源时可能出现的资源竞争问题。二、Semaphore 的基本原理Semaphore内部维护了一个计数器,表示允许访问资源的线程数量。线程通过调用acquire()方法来获取一个许可(减少计数器),通过调用release()方法来释放一个许可(增加计数器)。

2025-01-27 17:38:11 904

原创 NIO | 什么是Java中的NIO —— 结合业务场景理解 NIO (二)

实时通信应用 的主流技术, 整理本文的目的是。在现代的中,使用 WebSocket、MQTT 或 SignalR 等协议更为普遍。若您想了解 当前主流的有关的技术 , 请移步他文。

2025-01-22 19:26:44 451

原创 NIO | 什么是Java中的NIO —— 结合业务场景理解 NIO (一)

在 Java 中,NIO(New Input/Output)是 Java 1.4 引入的一个新的 I/O 类库,它提供了比传统的 I/O(如java.io包)更高效的 I/O 操作。NIO 提供了更好的性能,尤其是在需要处理的场景中(例如,等)。与传统 I/O 不同,NIO 是基于和的,支持非阻塞模式,使得在处理 I/O 操作时可以更加高效地使用系统资源。

2025-01-22 14:51:34 1247

原创 线程池 | java中的多线程

5种 创建多线程 的方式

2025-01-21 22:01:11 933

原创 Java异步编程 | CompletableFuture--实现复杂的异步控制流

是用于 创建一个异步任务 并 返回结果 的工厂方法,通常结合线程池使用:2. 注释说明CompletableFuture.supplyAsync():这是一个静态方法,用于异步地执行传入的 函数(在这里是 lambda 表达式)。它会在一个独立的线程中执行这个任务,默认使用 线程池来执行。Thread.currentThread().getName():打印当前执行异步任务的线程的名字,能帮助我们看到异步任务是如何在线程池中执行的。future.get(): 方法是阻塞的,调用它会让当前主线程

2025-01-21 18:12:36 846

原创 jdk17卸载后换jdk1.8遇到的问题

3、但是配置完之后,在cmd中输入java -version后,命令行无反应(没有报“Java既不是内部命令,也不是外部命令的错误”)1、找到jdk17所在文件夹,将文件夹进行删除。(问题就源于此,因为没删干净)

2024-07-03 22:30:01 666

原创 七、若依--P17--P18【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?

2024-06-24 12:21:50 1115

原创 六、若依--P15--P16【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?

2024-06-24 01:28:32 828

原创 五、若依--P14【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?

2024-06-23 19:02:23 928

原创 四、若依--P13【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

/ 引入后端api接口// 获取当前实例代理对象,用于访问组件数据、方法// 获取课程学科的数据字典//接下来通过ref定义了一些简单类型的响应式对象// 列表数据,用于接收后端返回的课程列表// 是否显示弹框// 是否显示加载状态// 是否显示搜索栏// 复选框,被选中id的数组// 复选框,是否单选,用于高亮修改、删除按钮;true表示不可用// 复选框,是否多选,仅高亮删除按钮// 总(记录)条数// 用于区分新增、修改对话框标题。

2024-06-23 14:32:06 662

原创 三、若依--P12【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

ruoyi-vue数据库设计包含了多个表结构,用于支持系统的各种功能模块。这些表可以根据它们的功能和用途进行分类,以便在后期使用时能够快速定位和理解。以下是对这些表结构的分类和简要说明。

2024-06-23 00:16:16 1371

原创 二、若依--P6-P11【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?

2024-06-22 10:03:49 648

原创 一、若依--P2--P5【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】

【黑马程序员Java最新AI+若依框架项目开发新方案视频教程,基于RuoYi-Vue3前后端分离版本,从前端到后端再到AI智能化应用全通关】 https://www.bilibili.com/video/BV1pf421B71v/?

2024-06-21 23:45:54 1538

原创 三、用户中心项目笔记----后端多环境实战+原始部署

依赖的环境地址数据库地址缓存地址消息队列地址项目端口号服务器配置。

2024-06-20 22:57:46 725

原创 二、用户中心项目笔记----笔记整理自鱼友炎

从request中取出session,将用户登录态标识移除掉 (HttpServletRequest request)

2024-06-18 16:53:12 310

原创 一、用户中心项目笔记(自用)----项目教学来自鱼皮

企业核心的用户中心系统,基于 Spring Boot 后端 + React 前端的,实现了用户注册、登录、查询等基础功能。

2024-06-16 23:51:07 1132

原创 MySQL中设置两个默认时间(createTime字段和updateTime字段)

在MySQL中,您可以使用DATETIME数据类型并设置默认值为来实现这一点。以下是一个示例,展示了如何为createTime和updateTimeupdateTime这样,您就可以确保这两个字段总是反映了记录的创建和最后更新时间。TIMESTAMP。

2024-06-16 01:09:46 1329

原创 yarn安装和使用时遇到的问题及解决方法

也尝试修改了网上说的下面这个文件夹的内容。用管理员身份打开cmd就行了……问题:安装yarn时出现。

2024-06-15 01:17:23 1360

原创 五、若依管理系统——添加用户数据预加载(流程、代码理解

getTreeselect():获取部门树状图(因为在点击新增用户后,有一个下拉列表是选部门的。getUser(): 获取用户其他的一些信息,进行回调,进行下拉列表的预填充。后端:查询到预加载的数据,传给前端,回填到表单中。reset():表单重置,把表单里的内容清空。

2024-06-09 17:25:25 333

原创 MyBatisPlus--黑马2024最新SpringCloud微服务开发与实战前置技能学习笔记

我们可以利用MyBatis的Wrapper来构建复杂的Where条件,然后自己定义SQL语句中剩下的部分。

2024-06-09 11:39:20 1358

原创 四、若依管理系统——用户数据查询、部门树状图(代码解读)

因为SysDept里的东西前端不一定都要,我们为了把多余的东西去掉,就要做一个类型转换。大致流程:前端发请求,后端把数据取出来,想办法把数据弄成一个树,再返回、加载就可以了。// 如果returnList为空,说明没有顶级部门,直接返回原始的depts列表。前端发路径为‘/system/dept/treeselect’的get请求,就到后台了。// 如果相同,说明n是t的子节点,将其加入到tlist中。// 创建一个空的SysMenu列表,用于存储找到的子节点。2、遍历顶级节点的子节点,再找到它的子节点。

2024-06-08 19:15:30 2703

原创 三、若依管理系统——首页加载逻辑、用户数据PageHelper分页

并且存入到一个threadlocal里面,然后再查询执行的时候呢,获取当前线程里面的这些分页参数,再通过拦截器自动的在sql语句中添加分页参数,之后呢就实现了这样一个分页查询。很显然,树状图和列表中的数据是由后端提供的,前台的话只是去加载。那么也就是说,我们跳转到这个页面之后,它就立马去发请求,从后台请求一个集合、一个tree。分页参数设置到PageHelper提供的对象里面,然后在Mybatis去查询的时候呢,会通过。,拦截到这个sql语句,把这边设置的参数加进去,从而实现一个分页的操作。

2024-06-08 11:37:44 649

原创 二、若依管理系统----获取用户角色和权限、获取动态菜单路由

总之,在recurionFn()方法中进行循环、递归(待补充)将这些数据拼装成了一个一级菜单、二级菜单、三级菜单的一个嵌套。把数据库里面的,符合角色身份的菜单,查询出来,想办法封装成一个对象,把这个对象传递到。总结:在加载页面的时候,去发送一个请求getRouters(),getRouters()就会把数据库里的数据查询出来,然后把数据组装、嵌套成一个三级菜单的结构,把这个东西丢到前端,前端用一个循环迭代出来,就把菜单加载出来了。3、根据后端查出来的数据menus,然后动态的生成前端的一个菜单。

2024-06-08 00:03:19 1687

原创 一、若依管理系统----验证码、登录流程

学习若依的一些记录

2024-06-07 17:38:59 810

空空如也

空空如也

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

TA关注的人

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