自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宋冠巡的博客

软件开发

  • 博客(249)
  • 收藏
  • 关注

原创 Docker版本命令深度解析:docker --version 与 docker version 的关键差异及使用场景

docker --version 和 docker version 都是用于查看 Docker 版本信息的命令,但它们的输出内容和使用场景有所不同。docker --version 仅显示 Docker 客户端(CLI)的版本号,输出简洁,不包含服务器(Docker Daemon)或其他详细信息。docker version 显示 Docker 客户端和服务器(Docker Daemon)的详细版本信息,包括两者的版本、API 版本、Go 版本、构建时间、操作系统架构等。

2025-04-03 08:15:00 352

原创 Windows安装Docker(Docker Desktop)

一、Windows安装Docker简明步骤二、安装过程示例

2025-04-03 08:00:00 773

原创 本地部署大模型:Ollama + DeepSeek + Chatbox(Windows 10)

本文介绍如何使用 `Ollama` 一键部署 `DeepSeek` 大模型,使用 `可视化工具(Chatbox)` 优化使用体验,最后对模型进行基本测试。本地化部署大模型(如 DeepSeek)的核心原因在于满足特定场景下对 **数据安全**、**性能控制**、**合规性**和**定制化需求** 的严格要求。使用 `Ollama` 一键部署 `DeepSeek` 大模型,适用场景为:快速本地体验,无需编码。

2025-02-28 08:00:00 903

原创 Spring Boot集成MyBatis访问MySQL:项目搭建全流程(包含报错场景分析及解决方案)

本文记录完全从零开始,创建一个新的集成MyBatis的SpringBoot项目,然后逐渐添加配置,使项目能够正常访问数据库的整个流程,并且详细记载了每一个报错和解决错误的过程。

2025-02-27 08:00:00 1476

原创 Spring Boot集成MyBatis访问MySQL:从项目搭建到基础数据库查询(基础入门)

在当今企业级应用开发中,Spring Boot、MyBatis与MySQL的组合凭借其高效性和灵活性,成为构建数据驱动型应用的首选方案。本文将带你从零开始搭建项目,掌握Spring Boot集成MyBatis的基础入门内容。

2025-02-26 08:00:00 1478

原创 IDEA 插件 Grep Console:控制台日志的高亮与过滤利器

Grep Console 是 IntelliJ IDEA 的一款插件,主要用于增强控制台输出的可读性和可操作性。它通过高亮显示、过滤等功能,帮助开发者更高效地处理控制台信息。

2025-02-20 08:00:00 1340

原创 在Spring Boot集成ActiveMQ的场景中,使用@JmsListener注解的消费者方法中的数据库操作是否为事务性

@JmsListener方法的JMS事务和数据库事务。SpringBoot集成ActiveMQ,消费者 @JmsListener 方法中要执行修改数据库操作,请问这个方法是一个事务吗?

2025-02-19 08:00:00 966

原创 审计信息说明和设计(AI问答,仅供参考)

如果需要更复杂的审计信息(如记录具体的业务操作),可以通过AOP(面向切面编程)实现。Spring Data JPA审计:适合记录实体的创建和修改信息。自定义审计日志:适合记录复杂的业务操作。日志框架:适合将审计信息记录到日志文件中。根据具体需求,可以选择一种或多种方式来实现审计信息模块。

2025-01-16 00:11:31 356

原创 API鉴权功能实现与模块选择:鉴权账号已注册

鉴权功能通常应该在系统的安全模块或API网关中完成。具体实现方式可以根据系统的架构和需求来决定,本文分析了常见的实现方案。

2025-01-14 08:30:00 1021

原创 项目团队SQL标准统一工具与方法(AI问答,仅供参考)

在项目中,如何保证团队成员全部遵守SQL标准,有一些工具能够帮助统一SQL格式吗?

2025-01-13 08:15:00 756

原创 SpringBoot MyBatis SQL大小写最佳实践(确保团队遵守SQL大小写规范)

编写SQL语句时,字母大小写的选择会影响代码的可读性和一致性。SQL关键字:大写表名和列名:小写或蛇形命名法别名:小写或驼峰命名法动态SQL:小写或驼峰命名法参数占位符:驼峰命名法

2025-01-13 08:00:00 807

原创 Eureka Client 服务消费者(调用API接口)(使用OpenFeign)

本文将指导你如何创建一个`Spring Boot`应用程序作为`Eureka Client`服务消费者,该服务消费者会从`Eureka Server`获取服务提供者的列表,并通过该列表与具体的服务提供者进行通信。在本文中,服务消费者使用 `OpenFeign` 调用服务提供者的API接口。

2025-01-03 08:15:00 1169

原创 Eureka Client 服务提供者(提供API接口)

本文将指导你如何创建一个Spring Boot应用程序作为Eureka Client服务提供者,该提供者会自动向Eureka Server注册自己,并定期发送心跳来维持其在线状态。

2025-01-03 08:00:00 797

原创 创建Eureka Server(注册中心)详解

本文详细介绍了如何使用Spring Boot创建Eureka Server (注册中心),并探讨了是否必须使用Spring Boot来搭建Eureka Server的问题。

2024-12-09 08:15:00 1454

原创 Eureka(服务发现)介绍,创建Eureka Server (注册中心),创建Eureka Client(服务提供者或消费者)

Eureka 是 Netflix 开发的服务发现工具。它由两个主要组件组成:Eureka Server 和 Eureka Client。

2024-12-09 08:00:00 1626

原创 SpringBoot与SpringCloud版本映射,Spring Cloud BOM

如果您有一个现有的 Spring Boot 应用程序,您希望将Spring Cloud添加到该应用程序中,第一步是确定您应该使用的Spring Cloud版本。您在应用中使用的版本将取决于您使用的 Spring Boot 版本。

2024-12-09 07:45:00 1275

原创 MyBatis预编译语句(Prepared Statements)防止SQL注入

MyBatis 是一个流行的 Java 持久层框架,它简化了数据库操作,同时支持预编译语句(Prepared Statements)以防止 SQL 注入。在 MyBatis 中使用预编译语句主要通过映射文件(如 XML 文件)或注解来定义 SQL 语句,并利用参数绑定机制来安全地传递参数。

2024-12-04 08:15:00 588

原创 预编译语句(Prepared Statements)防止SQL注入的原理

预编译语句(Prepared Statements)是一种数据库访问技术,它通过将SQL查询与参数分开处理来有效防止SQL注入攻击。

2024-12-04 08:00:00 1006

原创 Spring Boot Validation 、Jakarta Validation 和 Hibernate Validator 的关系

Jakarta Validation 提供了一个用于验证Java Bean的标准接口和注解。Hibernate Validator 是这个标准的具体实现,提供了更多的特性和灵活性。Spring Boot Validation 则是利用Spring Boot的特性,简化了在Spring Boot应用中集成和使用Jakarta Validation和Hibernate Validator的过程。

2024-12-03 08:15:00 1855

原创 Spring Boot Validation 封装自定义校验注解和校验器(validation-spring-boot-starter)

对于基于Spring Boot的应用程序来说,创建一个自定义校验注解并将其封装为一个启动器(starter),不仅可以提高代码的重用性和简化集成过程,还能确保项目之间的标准化和一致性。封装自定义 `校验注解` 和 `校验器` 的 SpringBoot 场景启动器:`validation-spring-boot-starter` 。本文简述了封装方法和启用后的效果。

2024-12-03 08:00:00 1082

原创 【参数校验】的实现方案:前端校验、后端校验、数据库校验

参数校验的实现可以根据具体的应用场景、技术栈和业务需求选择不同的方法。以下是几种常见的实现方式,以及在不同层次(如前端、后端、数据库层)上如何进行参数校验的指导。1. 前端校验2. 后端校验3. 数据库层校验

2024-12-02 08:11:13 1544

原创 从业务角度阐述【参数校验】的意义(参数校验:构建稳健、安全与高效业务系统的基石)

从业务角度阐述【参数校验】的意义:1. **提升用户体验**2. **保证数据的准确性和完整性**3. **强化系统安全防护**4. **增强系统稳定性**5. **维护业务逻辑的一致性**6. **提高性能效率**7. **减少维护成本和技术支持负担**8. **满足合规性要求**9. **促进团队协作与沟通**

2024-12-02 08:00:00 432

原创 SpringBoot3.4.0和OpenFeign4.1.4不兼容

SpringBoot升级到3.4.0版本,和OpenFeign不兼容,maven install 时报错,即使OpenFeign升到最新版本4.1.4,依然不兼容。SpringBoot版本降为3.3.6 ,maven install 成功。

2024-11-29 08:00:00 1167

原创 Windows10+VirtualBox+Ubuntu:安装虚拟机VirtualBox,虚拟机中安装Ubuntu

在Windows10系统中,安装虚拟机VirtualBox,VirtualBox中安装Ubuntu桌面版。

2024-11-26 08:00:00 1700

原创 使用DBeaver:新建MySQL数据库、新建用户并分配权限、连接MySQL数据库

使用DBeaver:新建MySQL数据库、新建用户并分配权限、连接MySQL数据库。

2024-11-25 08:00:00 1304

原创 Knife4j-SpringBoot3-OpenAPI3:基本使用、生产环境关闭接口文档、配置文件、配置接口文档描述信息、OpenAPI3注解

基本使用、生产环境关闭接口文档、配置文件、配置接口文档描述信息、OpenAPI3注解

2024-10-08 08:15:00 2397 3

原创 OpenFeign-查询参数-日期格式化:LocalDate、Date、@DateTimeFormat(低版本无效)

在FeignClient中的接口,使用 LocalDate 或 Date 类型表示日期,然后在实际调用远程接口时,由Feign框架将LocalDate或Date类型转为字符串类型的日期,此时需要使用@DateTimeFormat注解进行日期格式化。

2024-10-08 08:00:00 1382

原创 Vue3 + Vite 开发环境下解决跨域问题:配置代理服务器

当前端要调用服务器端的 API 接口,而服务器端没有配置 `CORS (Cross-Origin Resource Sharing)` ,此时可能会使用代理服务器来解决跨域问题。在生产环境,可能会使用Nginx来作为代理服务器;在开发环境,Vue3中可以配置内置的HTTP服务器作为代理,将请求通过代理服务器发送到目标服务器,而浏览器只会看到来自代理服务器的响应,这就可以绕过同源策略的限制。

2024-09-30 08:00:00 8489 1

原创 跨域问题、同源策略、CORS机制、Nginx解决跨域问题(AI问答,仅供参考)

跨域问题、同源策略、CORS机制、Nginx解决跨域问题。跨域问题通常是指在浏览器中由于同源策略(Same-origin policy)的限制而引起的问题。同源策略是Web安全的一个基本概念,它的目的是防止某个文档或脚本从一个来源加载资源时非法访问或修改另一个来源的资源或数据。这里的“来源”(origin)由协议(http/https)、域名(domain name)以及端口(port)三者共同确定。如果这三个条件完全相同,则认为是同源;否则,即为不同源。

2024-09-24 08:00:00 1426

原创 SpringBoot环境配置(Spring Boot Profile)

激活配置文件:当Spring Boot启动时,默认会查找并加载application.properties或application.yml中的配置。如果你希望根据不同的环境来使用不同的配置文件,可以通过激活配置文件来实现这一点。例如,你可以创建application-dev.properties或application-test.yml等文件来为开发环境或测试环境提供特定的配置。

2024-09-18 08:15:00 1227

原创 OpenFeign接口调用日志

在开发或测试环境中,需要更多的调试信息;在通过 Spring Cloud OpenFeign 调用远程服务的接口时,可能需要记录接口调用的日志详情,比如:请求头、请求参数、响应等。Spring Cloud OpenFeign 打印 FeignClient 的接口调用日志,可以通过 配置OpenFeign日志级别 来实现。OpenFeign 提供了不同的日志级别来控制日志输出的详细程度。请注意:需要同时配置 应用日志级别 为 DEBUG ,OpenFeign的接口调用日志才能正常打印。

2024-09-18 08:00:00 1168

原创 spring-boot-maven-plugin介绍(自定义Starter不要使用此插件)

一、spring-boot-maven-plugin介绍。二、自定义Starter不要使用spring-boot-maven-plugin,依赖Starter的项目会报错,找不到包。三、JAR包结构对比。四、maven-compiler-plugin(插件覆盖)。

2024-09-13 08:00:00 819

原创 SpringBoot自定义启动器(自定义Starter)

SpringBoot自定义启动器(自定义Starter)1. 简化依赖管理2. 自动配置3. 约定优于配置4. 简化起步引导

2024-09-11 08:00:00 1059

原创 Maven项目父模块POM中是否应该包含SpringBoot打包插件(spring-boot-maven-plugin)

对于同时包含应用服务子模块、公共库模块和自定义starter模块的项目,不应该在父POM文件中,配置spring-boot-maven-plugin,只在需要执行Spring Boot的应用服务模块中使用它。

2024-09-09 08:15:00 1657

原创 Maven项目父模块POM中不应包含实际依赖(dependency)

父模块不应该在``部分添加实际运行时的依赖,仅应通过``来管理依赖版本。

2024-09-09 08:00:00 357

原创 OpenFeign请求拦截器,注入配置属性类(@ConfigurationProperties),添加配置文件(yml)中的token到请求头

在使用Spring Boot结合OpenFeign进行微服务间调用时,需要在发起HTTP请求时添加一些默认的请求头,比如认证令牌(token)。为了实现这一功能,可以创建一个请求拦截器,并且通过`@ConfigurationProperties`来注入从配置文件中读取的属性值。

2024-09-06 08:00:00 1291

原创 OpenFeign请求拦截器传递请求头参数(上下文信息)

OpenFeign请求拦截器传递请求头参数(上下文信息)请求拦截器是Feign的一个特性,它在请求发送给服务端之前对其进行修改。这可以用来添加认证信息、日志跟踪ID或者其他任何你想在请求头中携带的信息。我们可以通过实现 `RequestInterceptor` 接口来创建一个自定义的请求拦截器,在发起远程调用前将必要的请求头添加到请求中。此外,还需要配置FeignClient来使用这个拦截器。

2024-09-03 08:00:00 1530

原创 OpenFeign响应统一解析:从响应(统一封装类型Result)中解析出核心数据(data字段)作为FeignClient接口返回值:自定义解码器(Decoder)

FeignClient 接口响应,统一解析。1. FeignClient配置自定义解码器(Decoder),该解码器能够解析响应数据,转为Result对象,并从中提取data数据,作为接口的返回值。2. 对于 FeignClient 返回值为`void`,不会进入解码逻辑,无法正确处理业务请求失败的情况。解决方案:FeignClient 配置自定义`Feign.Builder`,调用`decodeVoid()`方法修改配置,当返回值为 void 时,仍然使用解码器。

2024-09-02 08:00:00 2771 1

原创 多个FeignClient使用相同服务名报错问题:使用contextId区分不同FeignClient

多个FeignClient使用相同服务名报错问题:使用contextId区分不同FeignClient。在项目开发中,由于多个 `FeignClient` 使用了相同的 `name` ,导致SpringBoot启动时出现 `BeanDefinitionOverrideException` 异常。解决方案是在每个 `FeignClient` 上添加唯一的 `contextId`,如 `userFeignClient` 和 `helloWorldFeignClient`,以避免bean名称冲突。

2024-08-27 08:00:00 1442

原创 OpenFeign入门

OpenFeign入门:OpenFeign官网链接;OpenFeign入门示例;OpenFeign指明版本号。

2024-08-26 08:00:00 1183

《20221001-第14讲-什么是有限时间内能求解-问题的计算复杂性与分类.pdf》

课件:《大学计算机—计算思维导论》(战德臣 哈尔滨工业大学)-《20221001-第14讲-什么是有限时间内能求解—问题的计算复杂性与分类.pdf》 官方资源,请转到中国大学慕课MOOC,链接地址:https://www.icourse163.org/course/HIT-7001

2023-12-21

空空如也

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

TA关注的人

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