自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Redis day04-应用-实战-黑马点评-优惠券秒杀

需求:同一个用户只能下一单,即同一个userId和voucher_id只能做到唯一,做法就是判断一下当前用户id购买的券的id是否存在了,存在就禁止下单。代码://5.一人一单,先查询出用户id//5.1 查询订单.count();//5.2判断是否存在//用户已购买,不能再下单return Result.fail("已购买!");进行多线程测试,但是问题还是存在,仍会有一人多单情况,只是购买数量少了。其实还是线程问题,这一个瞬间下单的多个线程还是多。

2026-04-13 16:45:09 344

原创 Redis day03-应用-实战-黑马点评-商户查询缓存

缓存是数据交换的缓冲区,是存贮数据的临时地方,一般读写性能较高。

2026-03-25 23:56:57 457 4

原创 JSONUtil工具包大致学习使用

maven:3.使用1.java对象->java字符串(序列化)假设这有一个实体类user: 需求 代码示例 结果示例 转为普通 JSON 转为格式化 JSON (带换行缩进,方便看) \n \n \n 转为 JSONObject 对象 (方便后续动态操作) 内存中的 JSON 对象 假设我们有一个 JSON 字符串:

2026-03-24 17:38:19 462

原创 Redis day02-应用-实战-黑马点评-短信登录

安全问题用ThreadLocal解决。一个项目有很多controller,比如登录业务就是前端向usercontroller发送请求,在usecontroller中编写业务逻辑,但是随着业务开发,越来越多的业务都需要去校验用户的登录,不可能在每个都写一堆校验登录的业务逻辑。这样做完,还需要注意,因为我们设置了30分钟,超过会删除数据,但如果用户一直在访问,无疑30分钟就删除是不合理的,如果想在用户 访问期间一直有token,让redis一直更新。然后拷贝数据卷=也是有延迟的,在延迟中请求还是请求不到。

2026-03-23 17:31:47 448

原创 SpringAI+DeepSeek大模型应用开发实战

配置tool:在config中配置一个新的大模型:客服有自己的客服提示词,需要更换:定义一个新的controller:CustomerController:因为加入了数据库的操作,需要在启动类加上包扫描:启动运行,向ai发出提问,但是ai没有反应,后台日志报错:这是非法参数异常,指的是工具输入是非法的,因为使用的模型是openAi的API,但是实际模型是阿里百炼的大模型,虽然说阿里百炼兼容openai,但是实际兼容的并不优秀。

2026-03-19 23:16:37 722 1

原创 Redis day01-基础-初识

resdis是键值数据库:键值数据库也叫nosql数据库。

2026-03-09 15:53:17 428

原创 java微服务02-docker

镜像结构:分层好处有一点,加快下载。比如下载redis,有一层mysql下载完了redis就不用下载:如何告诉docker我们的镜像结构:由于制作镜像的过程中,需要逐层处理和打包,比较复杂,所以Docker就提供了自动打包镜像的功能。我们只需要将打包的过程,每一层要做的事情用固定的语法写下来,交给Docker去执行即可。而这种记录镜像结构的文件就称为Dockerfile指令说明示例FROM指定基础镜像ENV设置环境变量,可在后面指令使用COPY拷贝本地文件到镜像的指定目录RUN。

2026-02-10 21:41:28 704

原创 java微服务01-快速入门、mybatisplus

案例:完全手写sqlmp:其实就是mp很擅长进行where查询的部分,<foreach>这一步直接使用in来代替。而sql语句前半部分则不一定。

2026-02-05 23:16:12 1002

原创 MybatisPlus插件-简化代码开发

摘要:本文介绍了代码自动生成的方法,指出传统开发中大量重复代码可以通过工具自动生成。主要推荐两种实现方式:1)通过API依赖编写生成代码;2)使用IDEA插件MybatisX或MyBatisPlus,安装后通过CodeGenerator选项进行配置即可快速生成实体类、Mapper、Service等基础代码,大幅提升开发效率。

2026-01-30 23:13:56 86

原创 苍穹外卖资源点整理+个人错误解析-Day12-数据统计-EXCEL报表

接口设计:今日数据:订单管理:菜品总览:、套餐总览:应用场景:maven坐标:代码:public class POItest { //通过poi创建excel文件并写入数据public static void write() throws IOException { //在内存中创建一个excel文件 XSSFWorkbook excel = new XSSFWorkbook(); //在excel文件中创建一个sheet页.()中是sheef名称 XSSFShe

2026-01-22 19:13:42 782

原创 苍穹外卖资源点整理+个人错误解析-Day11-数据统计、图形报表

产品原型:业务规则:接口:接口中的data有两种返回格式,是有固定格式的,备注即是固定格式。并且具体返回回来的数据是由前端来指定。

2026-01-16 16:45:31 779

原创 Apache Echarts简单介绍与入门

这是一个基于javascript的数据可视化图表库。无论是什么图形,核心都是数据,只是通过图表来展示数据。

2025-12-05 10:48:10 176

原创 苍穹外卖资源点整理+个人错误解析-Day10-订单状态定时处理(Spring Task)、来单提醒和客户催单

是一个定时任务框架。作用就是定时自动执行某段java代码。

2025-11-27 23:53:25 1095

原创 苍穹外卖资源点整理+个人错误解析-Day09-用户端历史订单、商家端订单管理

产品原型:接口文档:业务规则:-分页查询历史订单-可以根据订单状态查询-展示订单数据时,需要展示的数据包括:下单时间、订单状态、订单金额、订单明细(商品名称、图片)

2025-11-26 17:44:11 980

原创 苍穹外卖资源点整理+个人错误解析-Day08-用户下单,订单支付

流程:准备工作:1.调用预支付接口,如何保证数据安全?即对数据加密解密:获得微信平台证书和商户私钥2.微信后台如何调用到商户系统?

2025-11-19 10:51:50 697

原创 内网穿透,获得临时域名——cpolar安装与使用

内网穿透(也叫端口映射、NAT 穿透)是一种网络技术。它能绕过路由器的 NAT 隔离机制,将内网中设备的服务端口,映射到有公网 IP 的服务器或中继节点上。最终实现外网设备通过公网地址,直接访问内网里的服务(比如内网的网站、摄像头、本地服务器等)。内网是指中的一些设备所在的网络,只有在这个内网中的设备之间才能直接通信,而外部网络无法直接访问内网中的应用或者设备。但是在某些情况下,我们可能需要让外部网络用户访问内网中的应用或设备,这个时候就需要用到内网穿透技术。所以内网穿透就是用来解决外网访问内网的。

2025-11-19 10:06:29 359

原创 苍穹外卖文件上传如何使用本地上传

文章摘要:本文详细介绍了Java Web应用中实现文件上传功能的技术方案。主要内容包括:1)使用常量类(FileUpLoadConstant)集中管理文件存储路径和访问URL;2)配置静态资源映射(WebMvcConfiguration)将HTTP请求映射到本地文件;3)通过CommonController处理文件上传,包括生成唯一文件名、验证文件类型和保存文件;4)讨论了不使用常量类和静态资源映射的简化实现方案。该方案实现了从文件上传到网络访问的完整流程,特别强调了路径管理和静态资源配置的重要性。

2025-11-18 17:03:08 921

原创 苍穹外卖资源点整理+个人错误解析-Day07-缓存商品、购物车

使用该框架之前先导入maven坐标:springcache是如何知道我们使用的是哪个缓存实现,对于这个问题我们并不需要做任何配置。只需要在pom文件导入过redis的一个java客户端就可以。像如果想用EHcach作为缓存实现,那么只需要导入EHcachr即可。常用注解:入门案例在启动类添加开启缓存注解功能:考虑提供的三个注解加在哪里:新增比如下图就是新增用户的方法。即将传进来的用户数据插入user表中。

2025-11-13 23:17:37 1135

原创 苍穹外卖资源点整理+个人错误解析-Day06-微信登陆、商品浏览

可以理解为zaijava程序中通过httopclient这个工具包可以来构造http请求,并且可以来发送http请求。使用的话需要导入maven坐标:核心API发送请求步骤:创建httpclient对象创建htp请求对象调用httpclient的execute方法发送请求注意的是如图,即使不装配httpclientmaven坐标也可以使用的原因就是这个。因为阿里云的oss就是基于httpclient分为以下几步:1.创建HttpClient对象2.创建请求对象3.发送请求4.获取服务端返回的状态码判断

2025-11-11 17:42:19 916

原创 苍穹外卖资源点整理+个人错误解析-Day05-Redis、店铺营业状态设置

rpop key。

2025-11-06 16:41:30 961

原创 苍穹外卖资源点整理+个人错误解析-Day04-套餐模块

新增套餐- 套餐分页查询- 删除套餐- 修改套餐- 起售停售套餐。

2025-11-04 17:34:12 737

原创 苍穹外卖资源点整理+个人错误解析-Day03

公共字段指在很多业务表中有一些相同的字段,如修改人之类。在进行维护这些数据时都需要对这几个字段进行赋值,会导致有很多重复代码。就像这样,每次使用DTO转型时都得将实体类多余对象进行赋值。如果表结构发生变化,则需要修改的代码太过繁琐冗余。

2025-10-30 11:08:03 655

原创 ElasticSearch——简单介绍以及在ideaspringboot的使用

/声明了一个 RestHighLevelClient类型的成员变量//RestHighLevelClient: 这是Elasticsearch官方提供的Java高级REST客户端类,用于与Elasticsearch服务器进行交互。它提供了丰富的API来执行各种Elasticsearch操作,如索引文档、搜索、删除等。这个变量的作用是在测试类中创建一个Elasticsearch客户端连接,以便在各个测试方法中使用。通过这个客户端,可以对Elasticsearch进行各种操作和测试。

2025-10-22 00:35:35 729

原创 苍穹外卖资源点整理+个人错误解析-Day02

本文摘要: 文章主要介绍了员工管理系统的开发过程,重点分析了新增员工、分页查询、启用禁用账号和编辑员工等功能模块的实现细节。在新增员工时,需对账号唯一性、手机号格式、性别选择和身份证号合法性进行校验;分页查询通过PageHelper实现,并封装为PageResult对象;启用禁用功能采用动态SQL更新状态;编辑员工包含查询回显和修改两个接口,使用DTO与实体类转换避免暴露敏感字段。开发中遇到JWT令牌校验、线程共享数据、时间格式处理等问题,通过ThreadLocal、全局异常处理和消息转换器等技术解决。系统

2025-10-15 22:25:13 1042

原创 苍穹外卖资源点整理+个人错误解析-Day01

文章摘要:本文详细介绍了《苍穹外卖》项目的开发环境搭建过程,包括前端nginx配置、端口冲突解决、后端Git仓库创建、前后端联调方法。重点讲解了反向代理配置、登录功能完善(密码加密)、接口文档导入(使用Apifox)以及Swagger接口文档工具的集成使用,包括配置类编写和常用注解说明。通过具体操作步骤和截图演示,完整呈现了企业级Java项目的开发准备流程。

2025-10-14 10:08:32 686

原创 苍穹外卖前端nginx错误之一解决

《苍穹外卖》项目Nginx配置问题解决方案:下载解压后需确保Nginx路径不含中文。启动时若出现IIS界面,说明80端口被占用(默认IIS使用)。解决方法:打开IIS管理器→删除占用80端口的网站→重启Nginx即可正常访问。注意:操作前建议备份IIS配置。

2025-10-13 15:05:59 430

原创 web后端开发——原理

这是三份配置文件,如果都写了一样的属性,哪个最优先生效?优先级最高的是properties,其次是yml,最后是yaml。springboot除了支持配置文件属性配置外还支持java系统属性和命令行参数进行属性配置。

2025-10-11 16:28:33 196

原创 WEB后端开发——事务管理&AOP面向切面编程

AOP:其实就是面向特定方法编程。面向这样的一个或者多个特定的方法。

2025-10-11 11:08:07 509

原创 JAVAWEB-基础登录功能

本文摘要介绍了登录功能实现及校验技术的核心内容。首先阐述了基于数据库唯一主键的登录SQL实现,通过Spring Boot控制器处理登录请求。其次重点讲解了三种会话跟踪技术:Cookie、Session和JWT令牌,详细分析了JWT的生成、解析及集成到登录流程的方法。然后介绍了过滤器实现统一登录校验的完整流程,包括请求拦截、令牌验证等关键步骤。最后简要提及拦截器技术作为替代方案。全文围绕如何构建安全的登录认证系统,从基础功能开发到安全防护措施的系统性实现方案。

2025-10-09 16:46:14 758

原创 JAVAweb案例之后端的增删改查

前端的文件上传:服务端接收文件:只写一个控制层:@Slf4jlog.info("文件上传:{},{},{}",username,age,image);文件上传后会存储在c盘的一个目录会有三个文件,因为我们提交的表单项有三个,分别是username,age,image.此外,这三个文件都是临时文件。只要文件上传这次请求响应完毕之后,临时文件会被自动删除。所以还得有一个文件保存功能。

2025-09-30 16:41:16 1012

原创 文件上传——阿里云oss

2025-09-30 15:45:06 142

原创 idea推荐springboot+mybatis+分页查询插件之PageHelper

在进行分页查询操作时,我们总能发现一个问题,就是分页查询这个功能的后端代码,似乎写起来较为繁琐,并且仔细研究可以发现,除了自定义的参数名不同,其他步骤可以说是几乎一致。所以为了简化开发流程优化代码,因此有这么一款idea插件横空出世。在mybaits框架中,目前最为流行的就是PageHelper分页插件。通过这一插件,可以大大简化mapper以及serviceimpl层的代码书写。

2025-09-28 17:41:36 1076

原创 idea推荐插springboot+mybatis插件之——mybaitsX

在使用mabatis加springboot开发时,可以下载一个插件mybatisXl来配合开发。点击配置文件的小鸟会跳转到接口方法。点击小鸟,会自动跳转到sql语句的配置。找到插件下载框,点击下载。mapper层多出一个提示。这样开发时会自动定位。

2025-09-28 17:03:40 336

原创 springboot知识补充之开发规范-Restful

在一个项目中会有许多开发人员,由于每人习惯不一致,会导致传统风格中user/url的url会有各种不同。通过url定位资源。比如这个users/1中的1其实就是主键id,就可以知道访问id为1的用户信息。一般来说我们描述一个网络资源可以通过两种方式,传统风格与REST风格。RSET:表述性状态转换,它是一种软件架构风格。HTTP动词描述操作。

2025-09-26 10:59:58 143

原创 JAVAweb开发06-mybatis

本文介绍了MyBatis持久层框架的基础使用,包括快速入门、增删改查操作和动态SQL。主要内容有:1. MyBatis入门配置,包括依赖引入、注解方式编写SQL;2. 基础CRUD操作示例,使用注解实现增删改查;3. 动态SQL语法,包括if/where条件判断、foreach循环遍历和sql/include代码复用;4. XML映射文件规范与配置,实现更复杂的SQL逻辑。文章通过具体代码示例演示了MyBatis简化JDBC开发的方式,解决了传统JDBC硬编码、参数处理繁琐等问题。特别说明了预编译SQL防止

2025-09-26 00:38:02 1077

原创 JAVAweb开发05-mysql

本文介绍了关系型数据库管理系统(RDBMS)的基本概念和操作。主要内容包括:1)数据库设计(DDL),涵盖表结构创建、约束设置;2)数据操作语言(DML),包括增删改查操作;3)数据查询语言(DQL),涉及条件查询、分组聚合、排序分页等;4)多表设计,讲解一对多、多对多、一对一关系的实现方式;5)多表查询方法,包括内连接、外连接和子查询;6)事务的概念和特性;7)索引的作用。文章详细说明了SQL语句的编写规范和各种数据库操作的具体实现方法。

2025-09-23 17:17:58 1139

原创 JAVA04-请求响应,分层解耦

前端浏览器发送的请求,都会先经过dispatch servlet,由servlet将这个请求转给后面的coontroller程序,由controller处理请求,最后返回。dispatch servlet:前端控制器。cs架构:客户端/服务器架构模式。

2025-09-22 15:29:29 986

原创 javaweb开发03-maven,springboot基础,http协议,tomcat介绍

打开浏览器前端控制台:观察请求标头的原始第一行为请求行,在这我们指定请求的方式以及资源路径以及请求协议。第一行之后的为请求头,每个请求头的格式:前面是名字,后面是值,用冒号进行分割。

2025-09-17 10:13:04 722

原创 JAVAWeb开发02-js,vue

外部js文件中,只包含js代码,不包含script标签script标签不能自闭和-- 外部脚本 -->//创建了一个新的js文件夹,这就是外部脚本。

2025-09-16 15:19:22 1030

原创 如何处理运行springboot源根之外的java文件

1.右击src,找到将目录标记为,并选择标记为资源根目录。(本人在这已经标记过所以提示为取消标记)2.找到自己的pom文件并加载为maven,随后重新加载maven项目。如图所示,图标警告,项目根本无法使用。

2025-09-16 14:24:52 369

空空如也

空空如也

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

TA关注的人

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