自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

独断万码

博客之道

  • 博客(62)
  • 资源 (2)
  • 收藏
  • 关注

原创 什么是有状态应用和无状态应用?

无状态应用和有状态应用的核心区别在于是否保存客户端会话信息。无状态应用(如RESTful API)每个请求独立处理,易于扩展但缺乏上下文;有状态应用(如数据库、在线游戏)保存用户状态,能提供连贯体验但扩展复杂。现代架构通常将状态外置(如Redis存储会话),让应用层保持无状态以获得弹性,同时依赖有状态的数据层处理持久化需求。两者的结合既能保证扩展性又能维护必要状态。

2025-10-16 15:07:12 754

原创 谷歌浏览器快速切换tab页的快捷键

Chrome标签页切换快捷键大全 基础切换: Win/Linux:左切Ctrl+Shift+Tab,右切Ctrl+Tab Mac:左切Command+Shift+Tab,右切Command+Tab 精准跳转: 数字键1-9:Ctrl+数字(Win/Linux)或Command+数字(Mac),9固定跳最后页 补充操作: 新建标签页Ctrl+T、关闭当前页Ctrl+W、恢复关闭页Ctrl+Shift+T 进阶:可通过扩展(如Shortkeys)自定义快捷键。掌握这些组合可显著提升浏览效率。

2025-10-09 11:22:54 551

原创 git cherry pick怎么用

摘要: git cherry-pick 是 Git 的选择性提交应用工具,可将其他分支的指定提交应用到当前分支,适合复用特定功能或修复。基本用法包括:切换目标分支、获取提交哈希、执行 git cherry-pick <哈希>。支持多提交处理(哈希1 哈希2 或范围 A..B),冲突时需手动解决(--continue/--abort)。常用参数 -n(不自动提交)和 -x(记录来源)。适用于跨分支同步紧急修复等场景,但需避免处理合并提交,操作前确保工作区干净。

2025-09-19 16:23:39 520

原创 sql语句中添加1=1含义和作用

SQL中1=1是一个恒成立的条件,主要用于简化动态SQL的条件拼接和调试查询。在动态SQL中,添加1=1可以统一使用AND拼接条件,避免判断第一个条件是否需要加AND。调试时,通过1=1可以快速覆盖原有WHERE条件查看全表数据。该写法不会影响性能,但静态SQL中不建议使用以免降低可读性。这种技巧性用法能优化开发效率。

2025-09-18 10:35:45 353

原创 git中rebase和merge的区别

Git中的rebase(变基)和merge(合并)是两种不同的分支整合方式,主要区别在于提交历史的处理: Merge保留完整历史,创建合并提交,适合公共分支整合,是非破坏性操作。 Rebase重写历史,形成线性提交,适合本地分支整理,但需避免对已推送分支使用。 建议工作流:本地开发时用rebase保持同步,合并到主分支时用merge --no-ff保留合并记录。核心原则是不要对已共享的分支变基,以免破坏协作历史。

2025-09-11 17:07:41 1050

原创 git中fetch和pull的区别

Git中fetch和pull命令的区别:fetch仅下载远程仓库更新到本地缓存,不自动合并,适合查看远程变更;pull则自动完成获取和合并操作,会直接修改本地代码但可能产生冲突。fetch更安全,pull更便捷,根据是否需要立即合并选择使用。

2025-09-11 16:52:02 327

原创 java软件项目开发中,实体类的类名及其所属包名的区别:PO、VO、BO、DAO、POJO、DTO

本文系统介绍了Java开发中常见的六种实体类概念:PO(持久化对象,对应数据库表)、VO(视图对象,用于前端展示)、BO(业务对象,封装业务逻辑)、DAO(数据访问接口)、POJO(简单Java对象)和DTO(数据传输对象)。文章从含义、类名特点、包名规范和核心特点四个维度对比分析各类别的区别,并总结出核心差异表,强调通过规范命名和分包可明确职责划分,提升代码可读性。各类实体在分层架构中承担不同角色,PO关注数据存储、VO侧重展示、BO处理业务、DAO操作数据、POJO作为基础对象、DTO优化跨层传输。

2025-09-11 16:47:44 617

原创 mvn 命令查看项目依赖信息

本文介绍了Maven项目中查看依赖关系的常用命令,包括查看依赖树(dependency:tree)、列表显示依赖(dependency:list)和分析依赖(dependency:analyze)等。重点讲解了如何通过mvn dependency:tree命令查看依赖层级关系,并结合grep或findstr筛选特定依赖,以及如何按范围过滤依赖。文章还说明了如何将依赖树输出到文件,并补充了IDE中查看依赖的方法。这些命令能帮助开发者清晰了解项目依赖结构,优化依赖管理,提高开发效率。

2025-08-28 10:23:02 938

原创 docker常用命令有哪些

本文整理了Docker常用命令,涵盖镜像管理、容器操作、网络和数据卷等核心功能。镜像命令包括查看、拉取、搜索、删除和构建镜像;容器命令涉及创建/启动/停止容器、进入容器、查看日志等;数据卷和网络部分提供了卷管理和网络配置的相关指令。此外还包含系统信息查看、命令帮助获取和资源清理等实用操作。这些命令组合能满足Docker日常使用的大部分场景需求。

2025-08-27 11:40:07 376

原创 msyql中,max_connections和max_user_connections区别

MySQL中max_connections设置服务器最大总连接数,max_user_connections限制单个用户连接数。前者是全局参数,默认151;后者是用户级参数,默认0表示无限制。用户实际连接数受两者中较小值限制。合理配置可防止资源被单一用户耗尽,确保服务器稳定。查看和修改方法不同:max_connections通过全局变量设置,max_user_connections通过用户授权设置。

2025-08-12 11:50:21 338

原创 HTTP 请求返回状态码和具体含义?200、400、403、404、502、503、504等

HTTP状态码是服务器响应请求时返回的三位数字代码,分为五大类:1xx(信息类)表示请求已接收;2xx(成功类)包括200 OK等常见状态;3xx(重定向类)如301永久跳转;4xx(客户端错误)包括404资源不存在等;5xx(服务器错误)如500服务器内部错误。这些标准化的状态码帮助开发者快速判断请求结果,是HTTP协议的重要组成部分,其中2xx表示成功,4xx和5xx常用于问题排查。

2025-08-08 15:12:31 675

原创 linux中kill 命令使用详解

bin/bash# 定义信号处理函数trap 'echo "收到SIGTERM信号,进行清理工作...";# 主程序逻辑while true;

2025-07-25 09:56:23 396

原创 oracle 数据库中,将几张表的数据按指定日期范围实时同步至同一个数据库的备份表中。

摘要:本文介绍了一个Oracle数据库表数据同步方案,通过存储过程和触发器组合实现指定日期范围内的数据备份。方案包含四个步骤:1)创建与原表结构相同的备份表;2)编写存储过程实现历史数据按日期范围同步;3)创建触发器实现实时数据变更同步;4)执行同步操作。该方案结合了批量同步和实时同步的优点,同时提出了主键约束、性能优化等注意事项,适用于需要定期备份特定时间范围数据的场景。

2025-07-21 14:19:51 452

原创 oracle数据库中,如果是数据量大的表做了触发器,将数据实时同步至同库备份表中,是否会影响原表性能? 是否会影响oracle数据库性能?

摘要: Oracle数据库中使用触发器实现大表实时同步会显著影响性能。触发器导致DML操作延迟增加(如INSERT从10ms增至30ms)、锁争用加剧(原表与备份表同时锁定)、I/O压力倍增(UPDATE操作I/O增加200%)。关键影响因素包括表数据量、DML频率和触发器复杂度。优化方案建议采用异步处理(如Advanced Queue)、批量提交、触发器优化(使用BEFORE触发和条件判断)及物理优化(分离存储、压缩表)。对于超大规模数据,推荐使用异步方案或Oracle Data Pump定期导出增量数据

2025-07-21 14:11:00 441

原创 JDK1.8中JVM堆内存等参数配置

在JDK 8中,JVM内存模型主要包括堆内存(Heap Memory)、元空间(Metaspace)以及直接内存(Direct Memory)。

2024-11-19 10:44:28 1949 1

原创 spring项目配置文件中 classspath: 和classpath*: 的区别和使用

用于加载类路径下的资源文件,它只会加载第一个匹配的资源。例如,如果存在两个相同路径和名称的文件,则只加载第一个。也用于加载类路径下的资源文件,但它会搜索所有匹配的资源。例如,如果存在两个相同路径和名称的文件,它们都将被加载。两个文件,因为它会搜索所有匹配的资源。在实际使用时,需要根据具体需求选择使用。文件,因为它只加载第一个匹配的资源。在Java配置文件中,时,你可以使用通配符。

2024-08-27 08:57:13 382

原创 Redis 缓存击穿和缓存穿透、缓存雪崩是什么以及解决方案有哪些?

Redis 缓存击穿和缓存穿透、缓存雪崩是什么以及解决方案有哪些?

2024-07-05 11:36:34 510

原创 springboot项目怎么样排除自带tomcat容器使用宝蓝德bes web中间件?

springboot项目怎么样排除自带tomcat容器使用宝蓝德?springboot整合宝蓝德bes中间件 ,bes web容器

2024-07-04 16:49:04 4099 4

原创 Redis宣布商用后,Redis国产化替代方案有那些?

Redis作为使用最为广泛的开源缓存中间件,现已成为IT开发中必不可少的核心组件。官方修改协议印证了“开源”不意味着“无偿使用”,相关限制或将对基于开源Redis提供中间件产品的厂商,及提供Redis服务的云厂商产生一定影响。Redis国产化替代方案有那些?

2024-06-13 15:30:47 24818

原创 如何优雅的解析多层JSON报文数据?什么是Ognl?

OGNL全称是Object Graph Navigation Language,翻译为对象导航图语言,是应用在java中的一个开源的表达式语言(Expression Language),它被集成在Struts2等框架中,作用是对数据进行访问,它拥有类型转换、访问对象方法、操作集合对象等功能,并且它实现了java.utils.Map 的接口,是一个Map结构的对象。

2024-06-06 11:15:16 1047

原创 @JsonSerialize注解的include方法和Inclusion枚举都被标注已经过期,不建议使用,@JsonSerialize的替代品是什么?

2.@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)的替代品为@JsonInclude(JsonInclude.Include.NON_NULL),上述的注解的作用是自定义在对象序列化过程中若属性字段值为Null,则步进行序列化处理。库中的一个注解,用于指定在将 Java 对象序列化为 JSON 格式时,如何进行自定义的序列化处理。通过这个注解,指定一个自定义的序列化器(serializer),以控制对象的序列化过程。

2024-06-04 09:08:46 681

原创 @Async的作用以及怎么使用?

代码中先调用异步方法再打印主方法结束信息。上面实际执行结果中,主方法打印先结束,说明调用的异步子方法与主方法实现了异步执行。当一个方法被 @Async 注解修饰时,Spring 将会在方法调用时创建一个。本机windows系统 + springboot架构 + openjdk21。,而不是在当前线程中同步执行。用于标识一个方法是异步执行。新的线程来异步执行该方法。@Async 注解是。框架提供的一个注解,

2024-05-30 15:27:52 745

原创 关于热备、冷备、双活、互备

软件应用系统或者存储服务、数据库系统等为提高系统主备功能一般有热备、冷备、双活三种备份方式。用于备份主机数据,降低故障发生时造成的损失和用户体验,提高系统的可用性、可靠性和容错性。

2024-05-24 10:59:12 4275

原创 Spring Boot Actuator 模块,spring-boot-starter-actuator

是 Spring Boot 提供的一个核心模块,用于暴露生产就绪型特性,帮助监控和管理 Spring Boot 应用程序。通过添加这个依赖,开发者可以很容易地获取应用程序的运行时信息,比如健康状态、环境属性、度量指标、HTTP 跟踪等。你可以通过配置文件的属性来启用或禁用特定的端点,或者通过实现自定义的安全配置来控制对端点的访问。还可以与 Spring Boot Admin 这样的监控工具集成,提供更为丰富和集中的管理界面。这样的 URL 来获取健康信息,假设你的应用运行在本地端口 8080 上。

2024-04-25 09:52:21 789

原创 jdk版本升级,导致项目编译报错:java: 程序包javax.annotation不存在

也就是说Java EE modules中的java.xml.bind (JAXB),从jdk9开始不建议使用,在jdk11中就直接将该部分删除。结果切换了以后项目编译就报错了,报错信息就是上述的:java: 程序包javax.annotation不存在。经过排查查询资料发现,原来,在jdk版本迭代中,在jdk9中javax.annotation被删除了。:用于指定在依赖注入完成后、显示的业务逻辑执行前需要进行的初始化操作。:用于指定在依赖的对象被销毁前,进行资源清理工作。

2024-04-22 15:39:17 4399 1

原创 TDSQL数据库使用限制有那些?需要注意什么?

TDSQL数据库使用限制

2023-12-19 16:59:58 1038

原创 MySQL中varchar(10)中定义的长度是字符长度还是字节长度长

首先 mysql 5.X 以上的版本的定※中 表示的字符度,如上varchar(20)你既可以添加20个英文字符,世可以添加二十个中文字符,表示的是字符长度;表示的并非是只能输入int类型的2位数字, 而是只能显示2位数字范围, 可以添加11位的int类型的任何数宇。无关,字符集是GBK或 者UTF-8在char(255)下都可已添加255个宇符 (字母或者汉宇或者都有)。mysql 4.X的版本表示的是字节长度,会根据字符集转变内容为字节长度存储。

2023-12-19 16:55:06 975

原创 面试常见问题:什么是进程? 什么是线程?进程和线程有什么区别?

面试常见问题:什么是进程? 什么是线程?进程和线程有什么区别?进程的特点是什么?线程的特点是什么?

2023-11-25 19:55:29 947

原创 java多线程任务并发问题:任务并行和任务并发有什么区别?

java多线程任务并发问题:任务并行和任务并发有什么区别?

2023-11-25 15:28:54 532

原创 Linux系统上使用不了rz和sz命令怎么办?什么是lrzsz?

lrzsz是一款在Linux里可代替ftp上传和下载的程序。

2023-10-29 21:42:32 3135

原创 Aerospike(K-V 缓存型)数据库(简称AS)入门了解

Aerospike介绍

2023-10-28 22:33:24 1677

原创 Linux系统环境下文件的压缩和解压缩命令

文件打包,最常用将文件和文件夹打包成.zip和.tar.gz格式,其中.zip格式常用于Windows,.tar.gz是常用于Linux。此外,上面的命令还可以用来把多个文件或文件夹打包成一个文件,只需要将被打包的文件夹和文件列在终端命令后面即可。$ tar -czf 文件名.tar.gz将要打包的文件或目录。$ zip 文件名.zip 将要打包的文件或目录。$ tar -xzf 文件名.tar.gz。$ unzip 文件名.zip。

2023-08-02 18:21:20 176

原创 事务的传播机制

事务的传播机制

2023-08-01 00:17:36 188

原创 数据库事务隔离机制

数据库事务数据库事务特点数据库事务隔离机制

2023-07-31 23:54:51 232

原创 什么是脏读?幻读?不可重复读?产生原因?

什么是脏读?幻读?不可重复读?产生原因脏读、幻读、不可重复读

2023-07-31 22:24:06 1073

原创 REST风格和RESTful资源访问介绍

REST请求风格介绍

2023-07-26 23:35:31 153

转载 国产化数据库有哪些?

国产数据库主要分为四大类:Oracle系(达梦)MySQL系(阿里、巨杉)informix系(南大通用)PostgreSQL系(华为、人大进仓)具体有:华为openGauss:开源关系型数据库华为GaussDB:AI-Native分布式数据库腾讯云TDSQL:分布式数据库阿里云AnalyticDB:分析型数据库阿里云PolarDB:关系型分布式云原生数据库京东云StarDB 5.0:原生分布式自治数据蚂蚁集团Oceanbase:原生分布式关系数据库达梦数据库DM8:通用关系型数

2023-07-13 00:50:19 42621 2

原创 git 添加 .gitignore文件,忽略不需要提交的文件

git 添加 .gitignore文件,忽略不需要提交的文件什么是.gitignore文件,.gitignore文件 的作用.gitignore文件不生效

2023-07-03 00:10:48 2814 1

原创 Spring整合JUnit进行单元测试

Spring整合JUnit进行单元测试

2023-06-25 21:50:53 449

原创 日志打印使用slf4j ,注解@Slf4j的使用

slf4j的介绍以及使用slf4j注解@Slf4j的使用

2023-06-21 22:11:44 4981

教学管理系统

学校的管理系统,包括信息管理,教师管理,学生管理等基本工功能。数据库是sqlserver 适合新手看。

2018-06-14

网上选课系统

基于java的作业管理系统,包括选课课程,学生的选课情况等。

2018-06-14

空空如也

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

TA关注的人

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