- 博客(20)
- 收藏
- 关注
原创 Mybatis-Plus学习笔记
MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。支持的数据库框架结构(网站访问速度稍慢,建议直接看官网文档)MybatisPlus底层通过反射,根据PO实体的信息来推断出表的信息,从而生成SQL的。MybatisPlus会把PO实体的类名驼峰转下划线作为表名MybatisPlus会把PO实体的所有变量名驼峰转下划线作为表的字段名,并根据变量类型推断字段类型。
2025-09-13 20:26:28
769
原创 黑马点评学习笔记——【Redis实战篇】
本文系统介绍了Redis在黑马点评项目中的核心技术应用。主要内容包括:1)用户身份验证采用Redis存储验证码和token;2)商户缓存管理解决缓存穿透、击穿和雪崩问题;3)秒杀功能实现基于Redis计数器、Lua脚本和分布式锁;4)社交功能通过Set集合实现关注关系;5)基于GEO的地理位置查询;6)使用BitMap的用户签到功能;7)HyperLogLog的UV统计。文章详细剖析了Redis在分布式系统中的应用场景和解决方案,涵盖了数据一致性、分布式锁、消息队列等关键技术点
2025-08-20 09:43:10
1111
原创 Java后端开发(实习岗)——面试经验
摘要:本文记录了作者参加5家Java开发岗位面试的经历,包括笔试和面试内容。笔试部分涵盖了JVM、Java基础、集合框架、异常处理、多线程、反射、SpringBoot等知识点,详细分析了易错题目。面试涉及项目经验、集合框架、IO流、访问修饰符等技术问题。作者总结了当前Java行业竞争激烈,双非二本学历求职困难,表达了对职业方向的迷茫。文章既提供了Java面试的常见考点解析,也反映了初级开发者的求职困境。
2025-07-27 21:49:33
656
原创 苍穹外卖——项目部署(Linux)
本文详细介绍了Linux环境下Java开发环境的搭建过程,包括虚拟机安装、Linux系统配置、JDK安装及Docker部署的全套流程。重点讲解了Docker的安装配置、MySQL和Redis容器化部署方法,以及前后端项目的Docker化部署方案。文章提供了具体操作命令和配置文件示例,并分享了常见问题的解决方法,如网络配置、镜像加速设置等。最后展示了如何构建包含JDK的后端项目镜像,并完成整个项目的容器化部署。
2025-07-20 14:51:31
682
原创 苍穹外卖后端开发(后)
本文详细记录了外卖小程序后端开发过程,包括用户端和管理端的功能实现。用户端开发涵盖微信登录、商品浏览、购物车、地址管理和订单系统,其中亮点包括利用Redis缓存菜品数据、百度地图校验配送范围(5公里内)以及SpringCache缓存套餐数据。管理端实现了数据统计(使用Apache POI导出Excel)、工作台等功能。开发中遇到的问题包括订单状态同步、Redis序列化、WebSocket连接等,并提供了相应解决方案。文章还分享了项目部署流程和开发注意事项,特别强调了在用户下单时需校验店铺营业状态的重要性。
2025-07-16 20:33:58
1066
原创 苍穹外卖——Apache POI(导出Excel文件)
本文介绍了使用Apache POI实现Excel报表导出的技术方案。通过POI工具可实现Java程序对Excel文件的读写操作,支持xls和xlsx格式。示例展示了运营数据报表导出流程:1)准备Excel模板;2)查询30天运营数据;3)将数据写入模板;4)通过输出流下载文件。POI优势在于无需Office环境、跨平台、功能全面,支持Excel、Word、PPT等多种文档格式的操作,广泛应用于Java后台报表导出场景。
2025-07-15 15:24:22
323
原创 苍穹外卖——WebSocket(网络协议)
本文介绍了Spring Boot中WebSocket的应用场景与实现步骤。主要内容包括:1) 导入WebSocket依赖;2) 创建WebSocketServer服务端组件,包含连接建立(@OnOpen)、消息接收(@OnMessage)和连接关闭(@OnClose)的回调方法;3) 配置WebSocketConfiguration注册Bean;4) 使用WebSocketTask定时任务类实现定时消息推送。通过这些步骤可以快速搭建基于WebSocket的双向通信服务,适用于实时消息推送等场景。
2025-07-14 22:05:41
463
原创 苍穹外卖——Spring Task(定时任务)
【摘要】SpringTask定时任务实现指南:1.应用场景包括定时数据处理、报表生成等;2.使用cron表达式定义执行周期,推荐使用在线生成器;3.实现步骤:①确认依赖(SpringBoot已内置) ②启动类添加@EnableScheduling注解 ③创建@Component类,用@Scheduled(cron="表达式")标注方法。示例展示了每5秒执行一次的日志记录任务,需配合Lombok的@Slf4j记录执行时间。注意需同时开启事务(@EnableTransactionManage
2025-07-14 21:33:18
316
原创 苍穹外卖——微信支付开发
本文介绍了微信小程序支付功能的开发流程,主要包括:1. 准备工作:完成微信支付接入和内网穿透配置,获取临时IP用于回调;2. 代码实现:通过WeChatPayUtil工具类封装微信支付接口调用,包括JSAPI下单、小程序支付和退款功能;3. 支付流程:小程序发起支付请求→后端生成预支付单→小程序调起支付→微信回调通知→后端更新订单状态。关键点包括:配置application.yml支付参数、处理微信回调数据解密、通过WebSocket实时通知支付结果。文档提供了完整的代码示例和支付时序图说明。
2025-07-14 21:12:50
892
原创 苍穹外卖——跳过微信支付模块
《苍穹外卖项目跳过微信支付模块的实现方法》 摘要:本文针对苍穹外卖项目中无法实操微信支付的情况,提供了跳过支付模块的开发方案。通过修改后端OrderServiceImpl中的订单支付、取消订单和拒单相关代码,以及调整微信小程序端逻辑,实现支付功能的简化处理。文章强调该方法仅作为临时解决方案,建议开发者仍应先系统学习微信支付开发流程,掌握标准支付模块实现方式后再处理此类特殊情况。
2025-07-13 22:08:22
320
原创 苍穹外卖——百度地图(校验配送范围)
本文介绍了苍穹外卖项目集成百度地图API实现配送范围校验的技术方案。主要内容包括:1)在百度地图开放平台注册开发者账号并获取AK密钥;2)通过YAML配置文件管理店铺地址和AK参数;3)使用HttpClient调用百度地理编码和路线规划API,解析返回的JSON数据获取经纬度坐标;4)计算店铺与用户地址的直线距离,若超过5公里则抛出异常。该方法通过地址解析和距离计算实现了精准的配送范围控制,为外卖业务提供了地理围栏功能。技术实现涉及API调用、JSON解析和异常处理等关键环节。
2025-07-13 21:26:30
563
原创 苍穹外卖——文件上传(阿里云OSS)
本文介绍了苍穹外卖项目中基于阿里云OSS的文件上传功能实现。文章首先讲解了阿里云OSS服务的概念、应用场景及使用步骤,包括注册账号、创建Bucket和配置AccessKey等操作。技术实现方面,详细说明了项目架构中的关键组件:AliOSSProperties类封装OSS属性、AliOssUtil工具类实现文件上传逻辑、OssConfiguration配置类创建单例工具类对象,以及Controller层处理上传请求。
2025-07-12 20:15:55
1207
原创 苍穹外卖——Redis数据库
提示:这篇文章主要介绍Redis数据库及如何操作Redis和相关命令,如有问题,还请各位大佬多多指点,本小白一定及时改正!!!
2025-07-10 21:25:31
1032
原创 苍穹外卖——公共字段填充
本文提出了一种基于AOP(面向切面编程)的公共字段自动填充解决方案。通过自定义注解@AutoFill标识需要自动填充的方法,使用切面类AutoFillAspect在方法执行前进行拦截,根据操作类型(INSERT/UPDATE)利用反射机制为实体对象自动填充公共字段(如创建时间、修改时间等)。该方法具有减少重复代码、无侵入性等优势,通过枚举定义操作类型和字段方法名提高了可维护性。在Mapper层只需添加注解即可实现字段自动填充,显著提升了开发效率和代码整洁度。
2025-07-10 17:29:02
434
原创 苍穹外卖项目Day01:Bug解决与工程导入
基于黑马视频,总结个人看法,并记录遇到的bug因为我用的是JDK21的版本,所以报错:'Class com.sun.tools.javac.tree.JCTree$JCImport does not have member field ‘com.sun.tools.javac.tree.JCTree qualid'
2025-06-30 20:27:55
464
原创 黑马JavaWeb-Tlias智能学习辅助系统
本文章用于记录up学习笔记,基于spring-boot + vue +mysql 的 Tlias智能学习辅助系统,如有问题,还请各位大佬多多指点,本小白一定及时改正!!!
2025-06-28 16:07:54
1603
原创 【局域网群聊系统】
用Java设计一个小项目,实现即时通讯功能,利用多线程与网络编程的基础知识,基于swing搭建界面,可巩固JavaSE的基础知识点,帮助理解多线程与网路编程。
2025-05-04 16:50:49
645
原创 Stone-maze游戏(石头迷阵)
本人是Java新手小白,写博客文章记录一下学习Java的“ 乐趣 ”;借鉴网上各种资料,完成一个小的项目,基于swing的小游戏。
2025-04-21 18:35:02
313
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人