- 博客(115)
- 收藏
- 关注
原创 【JavaEE】Spring Web MVC
官方文档介绍:翻译:Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从一开始就包含在 Spring 框架中。正式名称“Spring Web MVC”来自其源模块的名称 (spring-webmvc),但更常见的名称是“Spring MVC”。与 Spring Web MVC 并行,Spring Framework 5.0 引入了一个反应式堆栈 Web 框架,其名称“Spring WebFlux”也基于其源模块 (spring-webflux)。
2025-03-22 11:25:37
1088
原创 SQL中Limit的用法详解
LIMIT关键字是SQL中一个非常有用的工具,它可以用来限制查询结果返回的记录数量,实现数据的分页,或者从复杂查询中获取特定的记录。掌握LIMIT关键字的使用方法,可以让你更加高效地操作数据库。在实际应用中,需要注意LIMIT与查询结果集的相关性,以及常见错误用法和注意事项。
2025-03-22 02:23:33
391
原创 SpringCloud 微服务框架
单体架构:将业务全部功能集中到一个项目中,打成一个war包存储,部署在一台服务器中,只有一个数据库优点 :架构简单,部署成本低。适合小型项目问题:高并发性能问题,开发时代码耦合问题,部署升级时停服的问题垂直架构:拆分模块,每个模块使用自己的数据库,如果有模块需要其他模块数据时需要自己查对方模块数据库问题:大量代码冗余,系统难以维护,性能问题,部署问题分布式架构:根据业务功能对系统做拆分,每个业务功能作为独立项目开发,称为一个服务服务之间相互调用,分布式多节点部署。
2025-03-22 00:46:34
948
原创 SpringBoot 集成 Caffeine 实现本地缓存
Caffeine 官网Caffeine 是基于Java 1.8 的高性能本地缓存库,同样是 Google 开发的,由 Guava 改进而来,底层设计思路、功能和使用方式与 Guava 非常类似,但是各方面的性能都要远远超过前者,可以看做是 Guava cache 的升级版。而且在 Spring5 开始的默认缓存实现就将 Caffeine 代替原来的 Google Guava,官方说明指出,其缓存命中率已经接近最优值@Data@Service@Autowired// 模拟数据库数据。
2025-03-10 23:26:40
1012
原创 Spring Boot中Tomcat配置
在某些情况下,我们可能需要自定义Tomcat的连接器,以满足特定的安全需求或性能优化需求。这时,我们可以通过编写配置类来实现。@Bean// 可以添加其他自定义配置在这个配置类中,我们创建了一个自定义的Tomcat连接器,并将其添加到TomcatServletWebServerFactory中。通过这种方式,我们可以更灵活地控制Tomcat的行为。Tomcat连接器配置详解在Spring Boot项目中配置Tomcat是一个既简单又复杂的过程。
2025-03-10 17:27:28
828
原创 Redis 配置日志
3、将路径填入logfile后面的引号内,例如:logfile “d:/redislog/redis.log” (注意斜杆的方向,这个和windows cmd中的斜杆方向是反的)5、保存配置文件,以这个配置文件启动redis,然后这时候redis的启动框会变成一个黑框框,什么输出都没有,这就对了(因为输入全写到日志文件去了)2、打开配置文件,找到logfile(可能有多个logfile,认准旁边有loglevel的那个),或者直接搜logfile “”1、首先找到redis的配置文件。
2025-03-10 12:41:01
513
原创 Node.js 发起 HTTP 请求:7种方法对比,你用对了吗?
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境。它允许你在服务器端运行 JavaScript 代码,非常适合处理高并发的 I/O 操作。HTTP(HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议。HTTP 请求用于从服务器获取数据或将数据发送到服务器。在 Node.js 中,发起 HTTP 请求是开发中常见的需求之一。通过本文的介绍,相信你已经对 Node.js 中发起 HTTP 请求的各种方法有了深入的了解。
2025-03-07 22:51:42
589
原创 MySQL数据库的数据文件保存在哪?MySQL数据存在哪里
在安装好MySQL数据库使用一段时间后,会产生许多的数据库和数据。那这些数据库的数据文件存放在本地文件夹的什么位置呢一、默认位置MySQL创建的数据库实际上存储在文件系统的一个特定目录中,该目录通常为MySQL的数据目录。这个目录的默认位置依据操作系统和MySQL的安装方式不同而有所差异。、这个目录通常位于,它可能位于是个隐藏文件夹)**其中“X.X”是MySQL的版本号。目录(每个数据库都有一个与其同名的文件夹,而这个文件夹中包含了该数据库的所有表的文件,而其中的文件代表了数据库中的表。
2025-03-05 19:06:57
689
原创 MySQL —— 视图
视图是一张虚拟的表,它是基于一个或多个基本表或其他视图的查询结果集。视图本身不存储数据,而是通过执行查询来动态生成数据,用户可以像操作普通表一样使用视图来进行查询更新与管理等操作。视图本身也不占用物理存储空间,它仅仅是一个查询的逻辑表示,物理上它依赖于基础表中的数据。语法:当我们有一个复杂的 sql 查询时,如果每次都有这个需求,那么每次就要写相同的 sql 语句,例如:现在有四张表,如下所示,学生表,成绩表,班级表和课程表现在有一个需求:查询学生的 id ,姓名,对应的班级 ,课程名字以及对应的成绩,我
2025-03-05 17:44:42
798
原创 Java面试学习资源
【书籍】《进入 it 企业必读的 324个Java面试题》豆瓣。【github】互联网 Java 工程师进阶知识完全扫盲。【github】互联网求职面试题、知识点和面经整理。【github】汇总java生态圈常用技术。【书籍】《Java程序员面试笔试宝典》豆瓣。【github】Java后端必备的知识点。【github】Java学习+面试指南。【github】Java为主的技术摘要。【github】java 算法仓库。【github】技术面试必备知识。【github】互联网公司面经。
2025-03-05 16:19:27
123
原创 JAVA 面试背 通过_java面试题背不下来怎么办?java面试题总结
Language》一书的附录中给出了一个Java关键字列表,其中有goto和const,但是这两个是目前无法使用的关键字,因此有些地方将其称之为保留字,其实保留字这个词应该有更广泛的意义,因为熟悉C语言的程序员都知道,在系统类库中使用过的有特殊意义的单词或单词的组合都被视为保留字)。最近有很多java人员反映,说java面试题太多根本就背不下来,这可急坏了他们,毕竟要去面试java工作的,那么接下来,我们就来给大家讲解一下java面试题背不下来的解决方法。可以正确编译,因为s1+= 1;
2025-03-05 01:13:01
304
原创 CentOS 7 下安装RabbitMQ教程_centos启动rabbitmq
在centos7系统上搭建的rabbitmq3.8版本,但是发现跟其他的版本明显有些区别,比如web访问入口guest用户登录问题,报错是只允许通过localhost访问,解决方法是rabbitmq其他版本是修改sbin/rabbitmq.app文件,把其中的一行直接修改成。看样子网上大多数都是低版本的rabbitmq的解决方法,于是研究了一下其他的解决方法供参考。(1)准备RabbitMQ的安装包(rabbitmq-server-3.8.5-1.el7.noarch)下载地址mq。
2025-03-04 23:55:17
366
原创 运行Springboot + Vue 项目
*前言:**很多小白拿到java SpringBoot + Vue前后端分离的项目却不知道怎么运行起来,这里博主就带领小白们一起将项目运行起来吧!
2025-03-03 11:48:37
854
原创 服务器无故nginx异常关闭之kauditd0 kswapd0挖矿病毒 CPU占用200% 内存耗尽
当我用 命令 kill -9 kaudiod0 杀死进程后,没过一会儿,进程又自动开起来了。发现8G的内存快被占用光了,而我们只开了一个开销不大的java服务,按道理1G就够了。网上搜索教程上是kswapd0,而此次我们服务器上是 kswapd00。,这可能意味着原始启动它的进程或会话已经结束,但该进程仍然在运行。的 systemd 服务单元中运行的,该服务单元是为用户。发现有个kauditd0进程占用了200% 的CPU。的会话 189 创建的。发现有各种德国 美国的IP,因此可以确认是中毒了。
2025-03-02 22:06:36
430
原创 如何使用C#与SQL Server数据库进行交互
3.对应项目,系统添加数据库连接。3. 数据查询:通过点击按钮,应用程序能够查询并显示student表中的所有数据,使用户可以轻松地查看数据库中存储的信息。2. 数据插入:点击相应按钮可以将预设的学生信息插入到数据库的student表中,这提供了一种简单的数据录入方式。1. 数据库连接与测试:通过点击按钮可以测试与数据库的连接,确保应用程序能够成功连接到本地数据库XSCJDB。4. 按姓名查询:应用程序还提供了按姓名查询学生数据的功能,用户只需输入学生姓名,即可获取相应的学生信息。
2025-03-02 20:47:33
1265
原创 关于Spring IOC (DI-依赖注入)你需要知道的一切
在我们的日常开发中,创建对象的操作随处可见以至于对其十分熟悉的同时又感觉十分繁琐,每次需要对象都需要亲手将其new出来,甚至某些情况下由于坏编程习惯还会造成对象无法被回收,这是相当糟糕的。但更为严重的是,我们一直倡导的松耦合,少入侵原则,这种情况下变得一无是处。/*** Blog : http://blog.youkuaiyun.com/ [原文地址,请尊重原创]*///class//原来的做法//变为面向接口编程。
2025-03-02 19:08:43
994
原创 【送书福利-第四十四期】《 深入Rust标准库》
本书深入分析了Rust标准库的源代码,并厘清了分析Rust标准库源代码的脉络。全书共14章。第1章对Rust标准库体系进行了概述性介绍;第2章分析了Rust的一些独特性;第3~8章分析了CORE库与ALLOC库,这两个库可用于编写操作系统内核与用户态应用程序;第9~13章分析了STD库,STD库仅用于编写用户态应用程序;第14章对异步编程进行了简单分析。本书试图以标准库的源代码为基础分析Rust的一些最本质的内容,从而加快程序员掌握Rust的进程。
2025-03-01 15:18:58
853
原创 【MySQL篇】事务的认识以及四大特性
脏读不可重复读和幻读都是由于并发事务互相干扰所导致的问题。为了避免这些问题,可以选择合适的事务隔离级别:读未提交:出现脏读,不可重复读,幻读。读已提交:防止脏读,但可能会出现不可重复读和幻读。可重复读:防止脏读和不可重复读,但可能会出现幻读。串行化:完全避免所有并发问题,但性能最差。
2025-02-28 23:15:12
760
原创 《On Java进阶卷》阅读笔记(五)
文件中各条记录的大小不必相同,只需确定它们的大小以及在文件中的位置即可。高位优先的方式将最高位的字节放在最低的内存地址,即内存起始地址。缓冲区中保存着简单的字节,为了将这些字节转换为字符,要么将字节放入的时候进行编码,要么在将他们从缓冲区中读取出来的时候进行解码。用于生成格式化的输出。它是一个从零实现的、完全独立的类、有着完全属于自己、大部分是原生的方法,其行为和其他IO类型有本质上的区别。ByteBuffer是由一个8字节的数组包装而成的,随后通过各种不同基本类型的师徒缓冲区将该数组显示出来。
2025-02-28 14:14:43
870
原创 SQL Server导出和导入可选的数据库表和数据,以sql脚本形式
3. 如果只需要导出部分表,则选择第二项**“选择具体的数据库对象(Select specific database objects)”**,并勾选表;1. 打开SQL Server Management Studio,在需要导出表的数据库上单击右键 → 任务 → 生成脚本。1. 如果导出的脚本文件较小,可以直接双击文件,在SQL Server Management Studio里执行。如果同时需要导出表结构和数据,就从右上角的**“高级(Advanced)”5. 之后,连续点击下一步,直到完成。
2025-02-28 12:34:50
400
原创 SpringBoot连接多数据源MySQL、SqlServer等(MyBatisPlus测试)
经过上述演示,我们已经实现了在springboot项目中实现多数据库源的连接和操作,如果需要使用不同数据库,按照上述操作思路即可实现。
2025-02-28 10:51:42
719
原创 spring6概述
Spring 是一款主流的 Java EE 轻量级开源框架 ,Spring 由“Spring 之父”Rod Johnson 提出并创立,其目的是用于简化 Java 企业级应用的开发难度和开发周期。Spring的用途不仅限于服务器端的开发。从简单性、可测试性和松耦合的角度而言,任何Java应用都可以从Spring中受益。Spring 框架除了自己提供功能外,还提供整合其他技术和框架的能力。Spring 自诞生以来备受青睐,一直被广大开发人员作为 Java 企业级应用程序开发的首选。
2025-02-27 13:59:49
594
原创 Spring Boot 各种事务操作实战(自动回滚、手动回滚、部分回滚)
事务,就是一组操作数据库的动作集合。事务是现代数据库理论中的核心概念之一。如果一组处理步骤或者全部发生或者一步也不执行,我们称该组处理步骤为一个事务。当所有的步骤像一个操作一样被完整地执行,我们称该事务被提交。由于其中的一部分或多步执行失败,导致没有步骤被提交,则事务必须回滚到最初的系统状态。
2025-02-27 12:37:26
1097
原创 Python爬虫---中国大学MOOC爬取数据(文中有数据集)
本文为大二在校学生所做,内容为爬取中国大学Mooc网站的课程分类数据、课程数据、评论数据。数据集大佬们需要拿走。主要是希望大佬们能指正代码问题。
2025-02-27 11:14:56
1293
1
原创 MySQL 数据库基础
数据库是一个用于存储、管理和检索数据的系统,可以组织和保存大量的数据,使得数据能够被高效地访问、更新和管理文件也可以用来存储数据,那为什么还要使用数据库呢?文件保存数据有以下缺点:文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便基于上述问题,就可以使用更利于管理数据的系统 —— 数据库,它能够更有效的管理数据,且可以提供远程服务,即 通过远程连接来使用数据库,因此,也称为数据库服务器。
2025-02-26 01:02:03
263
原创 Java进阶:SpringMVC中放行静态资源
mvc如果找不到静态资源,交由原始容器tomcat寻找静态资源。mapping:映射地址。访问服务器找资源时候的地址。location:目录。
2025-02-25 21:40:48
243
原创 JAVA 面试背 通过_java面试题背不下来怎么办?java面试题总结
Language》一书的附录中给出了一个Java关键字列表,其中有goto和const,但是这两个是目前无法使用的关键字,因此有些地方将其称之为保留字,其实保留字这个词应该有更广泛的意义,因为熟悉C语言的程序员都知道,在系统类库中使用过的有特殊意义的单词或单词的组合都被视为保留字)。最近有很多java人员反映,说java面试题太多根本就背不下来,这可急坏了他们,毕竟要去面试java工作的,那么接下来,我们就来给大家讲解一下java面试题背不下来的解决方法。可以正确编译,因为s1+= 1;
2025-02-24 22:46:01
132
原创 IEEE 1588:电信网络的精确时间协议 (PTP)
PTP 是一种基于网络的时间同步协议,但PTP网络并非追求毫秒级同步,而是力求实现纳秒甚至皮秒级同步。同步对于电信网络节点而言至关重要,节点可以处于自由运行、频率锁定、相位锁定、保持等状态,如下图所示。
2025-02-24 19:03:21
681
原创 5个Java泛型面试问题(附详细答案)
类型擦除是Java编译器在编译阶段之后移除所有泛型类型信息的过程。在编译时,编译器强制执行类型检查并确保类型安全。在运行时,类型信息被擦除,这意味着像List和List这样的泛型类型都会变成普通的List。这就是为什么在不同泛型类型上进行方法重载受到限制的原因。
2025-02-24 16:12:13
254
原创 电池管理系统(BMS)架构详细解析:原理与器件选型指南
整个BMS架构的设计目的是监控电池的状态,保证电池在安全的工作范围内进行充放电,同时通过各种电气隔离技术保护低压电路,确保系统稳定性。其主要功能包括电池电压、电流、温度的实时监控,过压、过流、过温等异常情况的保护,以及通过通信接口与外部设备进行数据交换。保护与隔离:通过隔离器和光耦实现高压部分与低压控制部分的隔离,确保系统安全。MOSFET的选择:根据电池的充放电电流选择低导通电阻和高耐压的MOS器件。控制器的选择。
2025-02-23 06:11:29
1137
原创 应届生Java面试经验总结
非名校,软件工程专业,无相关工作经验,实际编程只有在学校学习时。刚刚毕业,找工作中。大家都知道,开发这一行没有工作经验相当的吃亏,如果没有丰富的知识,对知识良好的理解,与优秀的自学能力, 很难找到工作。经过近一个月的面试,总结一些信息。
2025-02-23 04:24:16
360
转载 在SpringBoot项目中使用Redission实现分布式锁(什么是Redission、为什么要使用分布式锁、分布式锁的应用场景、Redission的读锁和写锁、可重入锁的原理)
Redission是一个在Redis基础上实现的Java客户端,它不仅提供了对Redis各种数据结构的访问接口,还封装了一系列的分布式系统常用的高级功能,比如分布式锁、原子操作、分布式集合、发布订阅消息队列等Redission旨在简化Java应用与Redis服务之间的交互,使得Java开发者能够更加方便地使用Redis提供的各种功能基础与扩展:Redis是基础的数据存储服务,而Redission是在此基础上提供的一系列扩展功能,使Redis在Java应用中的使用更加便捷语言绑定。
2025-02-22 03:50:49
2311
原创 SpringBoot快速接入OpenAI大模型(JDK8)
由于SpringAI需要使用JDK17和Spring Boot3,但是目前很多应用依旧使用的JDK8版本,所以使用可以支持JDK8的AI4J来接入OpenAI大模型。
2025-02-21 17:12:21
2747
原创 Spring Cloud之五大组件
自定义负载均衡策略的实现,有两种方式方式一:创建类实现IRule接口,可以指定负载均衡策略(全局)方式二:在客户端的配置文件中,可以配置某一个服务调用的负载均衡策略(局部)
2025-02-21 15:19:15
2772
原创 Redis最全详细学习
Redis是用C语言开发的一个开源的高性能键值对(key-value)数据库。它通过提供多种键值数据类型来适应不同场景下的存储需求。
2025-02-21 02:13:41
2885
原创 OpenResty & Nginx:详细对比与部署指南
Nginx 和 OpenResty 都是高性能的 Web 服务器和反向代理服务器,但它们有着不同的特性和应用场景。Nginx 是一个轻量级的、高性能的 HTTP 和反向代理服务器,而 OpenResty 是基于 Nginx 的集成软件平台,增强了 Nginx 的功能,特别是通过嵌入 Lua 脚本支持来实现灵活的 Web 应用开发。Nginx 和 OpenResty 都是强大的 Web 服务器,各有其优点和适用场景。
2025-02-20 23:52:10
2383
原创 MySQL的日期时间类型
timestamp类型存储的是毫秒值,当前时间距1970-01-01 00:00:00的毫秒值,存储数据的时候需要对当前时间所在的时区进行转换,查询数据的时候再将时间转换为当前的时区,so使用timestamp类型存储的同一个时间值,在不同的时区查询时会显示不同的时间;datetime类型存储的是本地时区(东八区)的日期时间,其他时区的用户查看数据也是东八区的日期时间,存在必然的误差,datetime类型存储数据基本上是原样输入和输出;
2025-02-20 22:30:15
2011
原创 从入门到高手,MySQL 学习的最短路径就在这里!
MySQL 是一个开源的关系型数据库,用于存储和管理数据。它的可靠性、可扩展性和易用性使得 MySQL 成为开发者的热门选择。它在 Facebook、Netflix、Uber、Airbnb、Shopify 和 Booking.com 等高流量的应用中都占据了核心位置。尽管 MySQL 在近三十年前就开始崭露了头角,但它并没有显示出衰退的迹象。根据 DB-Engines 的排名,它是继 Oracle 数据库之后第二受欢迎的数据库。
2025-02-16 09:55:23
3974
原创 【thinkphp8】00003 案例 phpstudy_pro运行thinkphp8的phpmyadmin 报错,thinkphp8是基于php8的,要将phpmyadmin升级为5.2.1版本
哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!?
2025-02-16 00:59:00
261
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人