自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring Cloud Gateway 学习笔记:统一服务入口、路由断言、过滤器与自定义扩展

也是一个服务后端微服务的唯一入口Facade 模式门面模式 / 外观模式外部客户端不需要知道内部有多少个微服务只需要面对 Gateway@OverridetruefalseSpring Cloud Gateway 自带 Filter 不够用时,可以自己写。spring:cloud:gateway:routes:filters:args:实现 GlobalFilter+ 交给 Spring 管理全部 Route1. 请求到 Gateway。

2026-09-22 14:05:45 129

原创 Eureka 学习笔记:服务注册、服务发现与注册中心原理

自动维护服务列表有哪些服务每个服务有哪些实例实例 IP 是什么端口是什么实例是否还存活早期机器少时,就能应付很多场景。机器越来越多实例频繁上线 / 下线地址频繁变化如果仍靠人工维护配置,就很麻烦。谁上线了谁下线了谁还能用服务名IP端口上报给注册中心。服务消费者根据服务名称,从注册中心获取目标服务实例列表。服务提供者启动时→ 把地址注册到 Eureka服务消费者需要调用时→ 先去 Eureka 查询目标服务地址查询到实例以后→ 再向真正的服务实例发请求。

2026-09-22 14:03:57 181

原创 Nacos 学习笔记:注册中心、负载均衡、健康检查、环境隔离与配置中心

ConfigServer:非持久注册中心VIPServer:持久化注册中心Diamond:配置中心动态服务发现配置管理服务管理的平台。JavaGoC++Node.jsPythonScala如果把整份文档压缩成一个完整项目流程,可以记成下面这条线。

2026-09-17 11:30:34 207

原创 优雅实现远程调用 —— OpenFeign

情况Feign常见写法URL路径参数单个查询参数多个查询参数多个对象转Query参数JSON对象/product/5/product??"id": 5,这一章最核心的目的只有一句话:OpenFeign 把原本比较繁琐的 HTTP 远程调用,包装成了类似调用 Java 接口方法的形式。url,↓网络HTTP↓隐藏HTTP调用细节统一代码风格减少URL拼接提高代码可读性通过接口描述远程服务↓OpenFeign↓。

2026-09-17 11:28:11 191

原创 Spring Cloud 多机部署与负载均衡 LoadBalancer 学习笔记

简称:LB意思:把请求合理分配到多个服务实例。例如:用户请求↓负载均衡器/ | \请求1 --->9090请求2 --->9091请求3 --->9092请求4 --->9090这样:多个服务器共同承担压力。Spring Cloud默认:轮询。如果想随机:服务在哪里?product-service在哪?

2026-09-09 10:42:32 187

原创 Nacos 学习笔记:注册中心、负载均衡、健康检查、环境隔离与配置中心

注册中心:就是一个保存服务信息的服务器。服务名称↓IP地址↓端口号↓状态信息例如:服务A写死服务B IPIP变化服务增加服务下线服务A↓Eureka↓找到服务B概念作用服务注册服务告诉Eureka自己的地址服务发现消费者从Eureka找到服务注册中心服务客户端CAP分布式系统设计原则一句话:Eureka就是微服务世界里的114查询台,所有服务先登记,调用方先查询,再调用,实现服务地址动态管理。

2026-09-09 10:39:12 228

原创 Spring Cloud 环境和工程搭建

课程使用一个电商系统作为案例。例如:京东这样的系统。用户商品订单支付库存物流如果全部写在一个项目:电商项目用户模块商品模块订单模块支付模块库存模块随着业务增长:项目会越来越庞大。所以:采用微服务架构。

2026-09-07 11:14:25 144

原创 Spring Cloud 概述

单体架构:就是把一个系统的所有功能都写在一个项目里面。例如一个电商系统:用户管理商品管理订单管理支付管理库存管理物流管理一个 Java 项目xxx.jar部署到服务器。集群:就是部署多个相同的服务。用户服务1用户服务2用户服务3三个服务功能完全一样。用户请求负载均衡/ | \服务1 服务2 服务3分布式:就是把一个大的系统拆成多个小系统。例如:一个电商项目用户商品订单支付库存全部在一起用户服务商品服务订单服务支付服务库存服务每个服务独立运行。

2026-09-07 11:07:03 178

原创 Spring AOP 详细通俗总结

面向切面编程切点也叫切入点。作用是:告诉 Spring AOP,哪些方法需要被增强。就是切点表达式。controller 包下所有类的所有方法都要增强。连接点就是:满足切点规则的具体方法。通知就是:真正要执行的增强逻辑。log.info("执行耗时: {}", end - begin);这段代码就是通知。切点 + 通知对哪些方法,在什么时候,执行什么增强逻辑。

2026-07-09 13:59:31 187

原创 MyBatis-Plus 使用总结

MyBatis-Plus 虽然提供了很多方法,但不可能覆盖所有复杂业务。所以它也支持自定义 SQL。自定义 SQL 的思路是:SQL 主体自己写,查询条件仍然可以用 Wrapper 拼接。@Mapper@Testew也就是说,你不能以为传了实体对象,它就自动帮你拼 where。自定义 SQL 时,SQL 主体需要自己写清楚,条件部分可以交给 Wrapper。MyBatis-Plus 仍然支持 MyBatis 原来的 XML 写法。

2026-07-09 13:57:43 223

原创 MyBatis 操作数据库(进阶)总结

/标签主要作用常见场景<if>条件判断某个字段不为空才拼接<trim>处理前缀、后缀、多余逗号动态 insert、复杂 SQL<where>动态生成 where多条件查询<set>动态生成 set动态 update<foreach>遍历集合批量删除、批量查询<include>复用 SQL 片段公共字段列表错误理解:= null " >= null " >= null " >正确写法:= null " >= null " >= null " >因为 test 中写的是 Java 属性。

2026-06-17 20:16:17 203

原创 MyBatis 操作数据库入门总结

MyBatis 是一款优秀的持久层框架,主要用于简化 JDBC 开发。所谓持久层,就是和数据库打交道的那一层。Dao 层 / Mapper 层 / Repository 层“持久化”可以理解为:把数据保存到数据库、文件等长期存储介质中。用户注册后,把用户信息保存到数据库添加图书后,把图书信息保存到数据库删除用户时,修改数据库中的数据查询列表时,从数据库读取数据这些都属于持久层操作。数据库字段名和 Java 属性名有时候不完全一样。数据库是下划线命名,Java 是驼峰命名。

2026-06-17 20:07:17 252

原创 Spring Boot 日志总结

System.out.println("打印内容");来输出信息,用于查看程序是否执行、变量值是否正确、代码有没有进入某个分支等。但是随着项目越来越复杂,就不够用了。输出信息太简单;没有日志级别;不方便区分是哪一个类打印的;不方便保存到文件;不方便后期排查和分析问题;不适合正式项目使用。所以在 Spring Boot 项目中,一般不会直接使用作为主要日志方式,而是使用专业的日志框架。SLF4J 全称可以理解为 Java 的日志门面。

2026-06-13 13:27:19 205

原创 SpringBoot 配置文件

配置文件可以理解成:程序的“设置文件”。字体大小亮度语言网络通知开关这些设置不会直接写死在手机系统代码里,而是放在某个配置位置。用户修改设置后,程序启动或运行时读取这些设置,然后按照用户的配置运行。SpringBoot 项目也是一样。比如一个项目的端口号、数据库账号、数据库密码、日志级别、验证码宽度等,都可能会变化。如果这些内容直接写死在 Java 代码里,后期修改会很麻烦。硬编码就是:把数据直接写死在代码中。

2026-06-13 13:17:49 200

原创 Spring IoC & DI 入门总结

容器就是用来存放某种东西的工具。水杯冰箱垃圾桶盒子List:存储多个数据Map:存储键值对数据Tomcat:Web 容器Spring:IoC 容器Spring 容器主要管理的是对象。Bean控制反转IoC 是 Spring 的核心思想。以前对象由我们自己 new现在对象交给 Spring 容器创建和管理也就是说,原来对象的创建权在程序员手里,现在对象的创建权交给了 Spring 容器。这就是“控制反转”。依赖注入容器在运行期间,动态地为程序提供它所依赖的对象。

2026-04-29 17:15:09 492

原创 Spring Web MVC 入门总结

Spring Web MVC,通常简称为 Spring MVC。它是 Spring 框架中用于 Web 开发的框架。Spring Web MVC 是基于 Servlet API 构建的 Web 框架,从 Spring 框架早期就已经存在。Spring MVC 是一个 Web 框架Spring MVC 可以帮助我们接收浏览器请求Spring MVC 可以帮助我们处理请求参数Spring MVC 可以帮助我们向浏览器返回响应数据。

2026-04-27 15:48:51 382

原创 SpringBoot 快速上手总结

Maven 是一个项目管理工具。Maven 可以帮助我们管理 Java 项目Maven 可以帮助我们自动下载项目需要的 jar 包Maven 可以帮助我们完成项目构建、测试、打包等操作以前没有 Maven 时,如果项目需要某个第三方 jar 包,就需要我们自己去网上下载,然后手动添加到项目中。这种方式比较麻烦,而且容易出现版本不一致、jar 包缺失等问题。有了 Maven 之后,我们只需要在pom.xml文件中配置依赖,Maven 就会自动帮我们下载对应的 jar 包。

2026-04-27 15:48:26 383

原创 JavaScript 基础入门总结

JavaScript 简称 JS,是一种脚本语言。它最开始主要用于网页中的简单交互,比如表单验证、按钮点击、弹窗提示等。后来随着技术发展,JavaScript 的应用范围越来越广,不仅可以运行在浏览器中,也可以运行在很多非浏览器环境中。JavaScript 和 Java 不是同一门语言它们名字相似,但语言本身并不是一回事。hello();函数定义后不会自动执行只有调用函数时,函数体才会执行调用几次,函数就执行几次hello();hello();hello();hellohello。

2026-04-26 10:43:20 409

原创 CSS 基础入门总结

中文叫做层叠样式表。CSS 主要用于控制网页的样式。HTML 决定网页上有什么内容CSS 决定这些内容长什么样例如,HTML 中写了一个段落:</如果不使用 CSS,它只会按照浏览器默认样式显示。那么这个段落中的文字就会变成红色,并且字体大小变为 30px。CSS 是前端开发中负责页面样式的技术。美化网页控制元素样式控制页面布局实现结构和样式分离选择器 {属性名: 属性值;CSS 的三种引入方式CSS 基本语法CSS 注释CSS 书写规范。

2026-04-26 10:42:38 353

原创 【无标题】 HTML 基础入门总结

中文叫做超文本标记语言。HTML 是网页开发的基础,主要用于描述网页结构。HTML 决定网页有什么内容CSS 决定网页长什么样JavaScript 决定网页有什么交互HTML 文件基本结构标签的基本写法标签属性标题标签 h1-h6段落标签 p换行标签 br图片标签 img超链接标签 a表格标签 table、tr、td表单标签 form、input、select、textarea布局标签 div、spanHTML 本身并不难,关键是多写代码、多在浏览器中查看效果。

2026-04-25 11:41:55 561

原创 JAVAEE

框架可以理解为:别人提前写好的半成品工具你不用从零开始写所有代码,只需要按照框架的规则去调用它,就能更快完成项目。文档用了盖房子的例子:没有框架:你要自己从地基开始盖房子有框架:已经有了毛坯房,你只需要装修所以框架的作用是:提高开发效率减少重复代码帮助我们更规范地开发项目。

2026-04-25 11:10:54 379

原创 Git总结

开发新功能或修复问题时,我们会开一个分支,在分支里面折腾,这样绝对不会弄坏原来能运行的线上代码。这就是 Git 最好玩的地方。保存好,否则未保存的代码可能会报错不让你切换,甚至带进其他分支里去。你在这里怎么改,都不会影响 main 分支。如果你换了一台电脑,或者在网页上新建了文件(比如刚建的。切换分支前,最好把你当前分支写了一半的代码都。在企业开发中,我们通常不会直接修改主要代码((这会立刻复制当前的状态,并创建一个名为。),想把线上的更新同步到你当前的电脑上。提交依然遵守三步曲,但是最后的。

2026-04-14 20:33:44 55

空空如也

空空如也

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

TA关注的人

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