- 博客(58)
- 收藏
- 关注
原创 数据库课设---酒店管理系统(MySQL、VBNet)
当在客房表中加入一条信息后显示“已占”表示有客户入住,当在客房表中删除一条信息后显示“已退”表示客户离开。也请各位佬指出不足!(3) 联系:用菱形表示,菱形框内写明联系名,并用无向边与其有关实体连接。代码:(此处代码繁多,只截取主代码,剩下的都是粘贴这个管理系统的图片)(4)查询客房物品(roomitem)信息的视图定义如下。(2)查询客房(rooms)信息的视图定义如下。客房(客房号,客房类型,客房状态,客房单价)入住(客房号,入住时间,退房时间,住宿费用)客户(客户编号,姓名,性别,手机号)
2025-12-01 22:52:50
584
原创 一个比 Nginx 还简单的 Web 服务器
企业级的 Web 服务器非常多,Nginx、Tomcat、Apache、IIS、FastAPI、Flask 等。今天松哥再给大家介绍一个开源的 Web 服务器,这款服务器具备自动 HTTPS 功能和高度可配置性,它的名字是:Caddy。Caddy 是一个 Go 编写的 Web 服务器,类似于 Nginx,Caddy 提供了更加强大的功能,随着 v2 版本发布,Caddy 已经可以作为中小型站点 Web 服务器的另一个选择。Caddy 轻量简单,对新手也比较友好,我们一起来看下 Caddy 的用法吧。
2025-12-01 20:58:26
853
原创 Windows操作系统部署Tomcat详细讲解
如果修改为小于1024的端口(如80),在Linux和macOS系统中可能需要以管理员权限运行Tomcat,因为这些端口是特权端口。Tomcat是一个开源的Java Servlet容器,用于处理Java Web应用程序的请求和响应。文件中,可以修改Tomcat监听的端口。文件中配置虚拟主机,使得Tomcat能够根据不同的域名来提供不同的Web服务。表示当应用程序的类文件或配置文件发生变化时,Tomcat会自动重新加载应用程序。),当用户访问不同的域名时,Tomcat会根据虚拟主机的配置提供相应的服务。
2025-12-01 18:49:42
621
原创 Spring 过滤器:OncePerRequestFilter 应用详解
OncePerRequestFilter是Spring提供的一个过滤器基类,它确保了在一次完整的HTTP请求中,无论请求经过多少次内部转发,过滤器的逻辑都只会被执行一次。这对于需要在请求处理之前或之后进行一次性设置或清理资源的场景特别有用。OncePerRequestFilter是Spring框架中一个非常有用的工具,它可以帮助你在一次完整的HTTP请求中仅执行一次过滤器的逻辑。
2025-12-01 16:35:47
297
原创 Spring Boot从0到1 -day02
如果你需要为自己的组件或库添加自动配置支持,可以自己编写自动配置类,并遵循上述模式。创建一个自动配置类,并使用适当的条件注解。使用@Bean方法来定义 bean。如果需要绑定配置属性,可以使用注解。Spring Boot的强大之处在于其条件注解实现自动化和灵活配置。这些注解帮助开发人员轻松构建扩展性强、配置灵活的应用而无需关注复杂配置。通过智能地选择和配置Bean,提升了应用的健壮性和适应性。
2025-11-30 19:27:04
810
原创 Node.js HTTP模块详解:创建服务器、响应请求与客户端请求
MIME(Multipurpose Internet Mail Extensions,多用途互联网邮件扩展)类型,也称为媒体类型,是一种标准,用于定义文件的格式和类型。这些方法提供了控制 HTTP 响应的灵活性,允许开发者根据需要发送不同类型的响应。模块发送不同类型的HTTP请求,包括基本的GET请求、POST请求、发送JSON数据、处理GET参数和自动处理重定向。请求头字段可以包含客户端能够处理的MIME类型列表,这允许服务器根据客户端的能力返回合适的数据格式。:表示服务器在处理请求的过程中发生了错误。
2025-11-30 17:31:03
879
原创 MySQL 数据增删改查
PS:连接查询涉及到两个表以上,在查询的时候至少要有一个必备的连接条件,这个必备的条件就是两个表共有的那个字段相等,而且这个字段一定在一个表里是主键,在另一个表里是外健。PS:左连接和右连接就是分别以表1和表2为基表,返回左(右)表中所有记录及连接表中符合条件的记录的外连接。PS:ASC是降序,DESC是升序,在不写明是ASC还是DESC的情况下,默认是ASC降序。连接查询是将多张表中记录按照指定的条件进行连接的查询方式。定义:子查询是在一个查询的内部包括另一个查询的查询方式。如何查看班级同学的平均身高?
2025-11-30 15:35:02
638
原创 Docker:基于自制openjdk8镜像 or 官方openjdk8镜像,制作tomcat镜像
78.56 MBopenjdk二进制下载地址Dockerfile中,source /etc/profile不能加载的原因为什么还需要选择使用他的原因:三 中,tomcat普通用户交互式启动tomcat#在 Docker 容器中,/etc/profile 文件不会在容器启动时自动执行,这是因为 Docker 容器通常不会启动交互式登录 shell,而是直接运行指定的命令。
2025-11-30 13:38:22
320
原创 在21世纪的我用C语言探寻世界本质——字符函数和字符串函数(2)
(9)现在我们就来看进行一次匹配的过程,也很简单,我们还是创建一个while循环,如果s1和s2解引用不是 ,并且解引用后相等,那我们就让s1和s2加加,一直往后走,当循环结束时,我们就判断s2解引用后是否是 ,如果是说明完全匹配上了,就返回cp,不是那么说明没有完全匹配,就让cp++,开始下一次循环查找。而不带n的字符串函数和带n的字符串函数的根本区别是带n的字符串函数更灵活,可以指定拷贝的字符的个数,所以也叫带n的字符串函数为受限制的字符串函数,不带n的为不受限制的字符串函数。
2025-11-30 02:20:43
850
原创 springboot与springcloud对应版本
2.0.X.RELEASE 2.0.4.RELEASE(停止维护,建议升级) Spring Cloud Finchley。1.5.X.RELEASE 1.5.1.RELEASE(停止维护,建议升级) Spring Cloud Edgware。Spring Boot 与 Spring Cloud Alibaba 版本对应关系。
2025-11-29 21:13:18
217
1
原创 PostgreSQL 17 发布了!非常稳定的版本
这些新特性和改进不仅提升了数据库的性能和功能,也增强了数据库的可用性和灵活性,使得 PostgreSQL 17 成为一个值得期待的版本。
2025-11-29 18:25:02
286
原创 mysql in查询大数据量业务无法避免情境下优化
在 MySQL 中,IN查询操作广泛用于从数据库中检索符合条件的多条记录,但当涉及到大数据量的IN查询时,性能可能会显著下降。特别是当IN子句中的元素数量非常大时,MySQL 需要对每个元素进行匹配,这会导致查询变得非常慢。为了解决这个问题,我们需要采取一些优化策略来提升查询效率。
2025-11-29 15:47:19
546
原创 基于SpringBoot和PostGIS的云南与缅甸的千里边境线实战
云南,这个位于中国西南边陲的省份,以其独特的地理位置和丰富的民族文化而闻名。作为中国连接东南亚和南亚的重要门户,云南拥有长达四千多公里的边境线,与缅甸、老挝和越南三国接壤。这条边境线不仅是中国对外开放的前沿,也是维护国家安全和地区稳定的关键地带。随着全球化的深入发展和区域合作的不断加强,云南边境线的战略地位日益凸显。云南的边境线总长达到4060公里,是中国边境线最长的省份之一。这条边境线没有天然物理屏障,地势错综复杂、犬牙交错,有的是山高林密、荆棘丛生,沼泽密布、河水湍急。
2025-11-29 02:48:37
240
原创 【mysql】ERROR 1819 (HY000) Your password does not satisfy the current policy requirements的解决方案
创建mysql新用户的时候,提示如下错误。因为你设置的密码没有满足系统当前的密码安全策略要求。解决方案:出现错误信息 “Your password does not satisfy the current policy requirements” 通常是因为你设置的密码没有满足系统当前的密码安全策略要求。这种情况通常发生在你为 MySQL 用户或系统用户设置密码时。
2025-11-29 00:15:57
413
原创 Python爬虫完整代码拿走不谢
对于新手做Python爬虫来说是有点难处的,前期练习的时候可以直接套用模板,这样省时省力还很方便。若要更改爬取网站,则需要更改URL以及相应的html格式(代码中的“item”)。使用Python爬取某网站的相关数据,并保存到同目录下Excel。
2025-11-28 18:51:24
4384
13
原创 mysql in查询大数据量业务无法避免情境下优化
在 MySQL 中,IN查询操作广泛用于从数据库中检索符合条件的多条记录,但当涉及到大数据量的IN查询时,性能可能会显著下降。特别是当IN子句中的元素数量非常大时,MySQL 需要对每个元素进行匹配,这会导致查询变得非常慢。为了解决这个问题,我们需要采取一些优化策略来提升查询效率。
2025-11-27 11:41:56
347
原创 redis的下载和安装详解
这样只需要在本机上操作者两个目录中的内容,就可以直接同步修改docker容器中对应的目录中的内容。而使用数据卷挂载,docker会自动维护目录,但是目录比较深。docker镜像中的redis默认都是没有配置文件的,也就是说/etc/redis目录下是空的。:将宿主机端口和容器端口相关联,是指可以用宿主机的6379端口访问容器的6379端口。之所以这里创建目录,是想使用docker数据卷挂载的第二种方式,直接使用磁盘挂载。意思就是不使用数据卷,直接把本机的某个目录和docker容器中的某个目录进行关联。
2025-11-26 11:44:54
304
原创 Nginx 配置前端后端服务
在配置Nginx以支持前端和后端服务时,需要了解Nginx的基本配置语法和结构,并依次设置Nginx作为前端静态资源服务器和反向代理服务器以连接后端应用。
2025-11-26 10:07:06
348
原创 mysql 迁移达梦数据库出现的 sql 语法问题 以及迁移方案
Copy CodeMySQL: DATE_FORMAT( a.expiry_date, ‘%Y-%m-%d %H:%M:%S’ ) 达梦: TO_CHAR(a.expiry_date, ‘YYYY-MM-DD HH24:MI:SS’)MySQL: DATE_FORMAT( a.expiry_date, ‘%Y-%m-%d %H:%M:%S’ ) 达梦: TO_CHAR(a.expiry_date, ‘YYYY-MM-DD HH24:MI:SS’)另外,在某些函数和操作符的使用上也有一些差异。
2025-11-25 20:07:02
288
原创 Java 进阶:如何让线程主动让出 CPU
suspend 挂起线程,并不会释放锁,又不像 sleep 那样一段时间后自动恢复,所以容易引起死锁。wait 会把当前持有的锁释放掉同时阻塞住,让出 CPU。当其他线程调用 Object.notify/notifyAll 时,会被唤醒,可能得到 CPU,并且获得锁。yield 也可以让线程主动让出 CPU,然后和其他线程一起竞争 CPU,但是调度器也可以忽略 yield。,直接停止线程,同时会释放所有锁,太过暴力,容易导致数据不一致。sleep 方法可以让线程主动让出 CPU,但是并不会释放锁。
2025-11-25 18:27:17
307
原创 SpringSecurity+jwt实现权限认证功能
前面我们已经通过使用springboot框架获得了管理数据的基本能力,但是一个系统不和或缺的功能是安全登录。这里我们以springsecurity+jwt方案实现登录以及权限控制。本文对jwt登录校验,权限管理的原理简单描述,并且提供了实现方案。
2025-11-23 15:51:22
294
原创 Spring+Quartz实现定时任务的配置方法
如果是通过MethodInvokingJobDetailFactoryBean在运行中动态生成的Job,配置的xml文件有个concurrent属性,这个属性的功能是配置此job是否可以并行运行,如果为false则表示不可以并行运行,否则可以并行。如果为false,那么,在这种情况下,当前job还在运行,那么下一个job只能延时运行。任务有并行和串行之分,并行是指:一个定时任务,当执行时间到了的时候,立刻执行此任务,不管当前这个任务是否在执行中;如果不配置,默认是true的,就是允许并行。
2025-11-23 14:12:41
169
原创 【SQL】Delete使用
子查询(Sub Query)或称为内查询(Inner Query)、嵌套查询(Nested Query),是SQL语言中一种常用的程序模块,用于在一个查询语句中嵌套另一个查询语句。当一个查询的结果是另一个查询的条件时,这个查询就被称为子查询。子句可以包含各种条件,这些条件可以基于一个或多个列的值。可以直接作笛卡尔积,比较id大小和电子邮箱,删除所有id较大且相同的电子邮箱。编写解决方案删除所有重复的电子邮件,只保留一个具有最小id的唯一电子邮件。id 是该表的主键列(具有唯一值的列)。
2025-11-22 22:08:35
451
原创 Windows操作系统部署Tomcat详细讲解
如果修改为小于1024的端口(如80),在Linux和macOS系统中可能需要以管理员权限运行Tomcat,因为这些端口是特权端口。Tomcat是一个开源的Java Servlet容器,用于处理Java Web应用程序的请求和响应。文件中,可以修改Tomcat监听的端口。文件中配置虚拟主机,使得Tomcat能够根据不同的域名来提供不同的Web服务。表示当应用程序的类文件或配置文件发生变化时,Tomcat会自动重新加载应用程序。),当用户访问不同的域名时,Tomcat会根据虚拟主机的配置提供相应的服务。
2025-11-22 20:31:48
919
原创 SpringCloud系列教程:微服务的未来(十四)网关登录校验、自定义过滤器GlobalFilter、GatawayFilter
在微服务架构中,API 网关扮演着至关重要的角色,负责路由请求、执行安全验证、流量控制等任务。Spring Cloud Gateway 作为一个强大的网关解决方案,提供了灵活的方式来实现这些功能。本篇博客将重点介绍如何在 Spring Cloud Gateway 中实现网关登录校验,以及如何利用自定义过滤器(GlobalFilter 和 GatewayFilter)来处理请求和响应。通过这些技术,开发者可以在网关层统一处理认证、授权等功能,同时保持对路由的细粒度控制。
2025-11-21 22:05:10
1011
原创 Spring 过滤器:OncePerRequestFilter 应用详解
OncePerRequestFilter是Spring提供的一个过滤器基类,它确保了在一次完整的HTTP请求中,无论请求经过多少次内部转发,过滤器的逻辑都只会被执行一次。这对于需要在请求处理之前或之后进行一次性设置或清理资源的场景特别有用。OncePerRequestFilter是Spring框架中一个非常有用的工具,它可以帮助你在一次完整的HTTP请求中仅执行一次过滤器的逻辑。
2025-11-21 20:27:30
237
原创 SpringSecurity之跨域
CORS(Cross-Origin Resource Sharing)是由W3C制定的一种跨域资源共享技术标准,其目的就是为了解决前端的跨域请求。在JavaEE开发中,最常见的前端跨域请求解决方案是早起的JSONP,但是JSONP只支持GET请求,这是一个很大的缺陷,而CORS则支持多种HTTP请求方法,也是目前主流的跨域解决方案。CORS中新增了一组HTTP请求头字段,通过这些字段,服务器高炉浏览器,哪些网站通过浏览器有权限访问哪些资源。
2025-11-20 20:29:22
899
原创 spring-cloud-gateway报错Failed to bind properties under ‘‘ to org.springframework.cloud.gateway
这里是因为PredicateDefinition在添对应的Predicate的时候,根据PredicateDefinition的name取出对应的XXXXRoutePredicateFactory。比如name是Query,那么对应的就是QueryRoutePredicateFactory,如果name是Header,那么对应的就是HeaderRoutePredicateFactory。这里的addArg会有一个key,这里的key必须和XXXXRoutePredicateFactory的对应。
2025-11-20 18:57:01
172
原创 基于SpringBoot和PostGIS的全球首都信息管理设计与实现
首都,一个国家的政治、文化和经济中心,是国家的心脏,也是其对外展示的窗口。它们不仅是国家权力的象征,更是全球交流与合作的重要平台。在这个全球化的时代,首都的作用愈发显著,它们不仅是国内政策的制定地,也是国际关系和全球治理的关键节点。首都,作为国家的象征,承载着国家的历史与文化。从北京的紫禁城到华盛顿的白宫,从巴黎的埃菲尔铁塔到莫斯科的克里姆林宫,每一座首都都有其独特的故事和魅力。它们不仅是历史的见证者,也是现代文明的创造者。首都的建筑风格、城市规划和文化活动,无一不反映出一个国家的精神面貌和发展理念。
2025-11-18 16:46:52
282
原创 【Spring Security系列】Spring Security 过滤器详解与基于JDBC的认证实现
上文说到,Spring Security它是一个强大的和高度可定制的身份验证和访问控制框架。它提供了一套丰富的功能,用于保护基于Spring的应用程序。上文又说到,在Spring Security中,过滤器(Filter)是一个重要的组件,用于处理身份验证、授权和其他安全相关的任务。Spring Security 的过滤器链由多个过滤器组成,每个过滤器负责处理特定的安全任务。当请求到达应用程序时,它会依次通过过滤器链中的每个过滤器,直到到达目标资源。
2025-11-18 14:55:00
328
原创 Redis安装教程(超详细)
解决办法:1、改为2、将改为3、设置redis秘密,注意如果不行,可以尝试重启服务器试试设置密码后登陆需要如下图操作OK。
2025-11-17 23:53:01
964
原创 MySQL的日期时间类型
timestamp类型存储的是毫秒值,当前时间距1970-01-01 00:00:00的毫秒值,存储数据的时候需要对当前时间所在的时区进行转换,查询数据的时候再将时间转换为当前的时区,so使用timestamp类型存储的同一个时间值,在不同的时区查询时会显示不同的时间;datetime类型存储的是本地时区(东八区)的日期时间,其他时区的用户查看数据也是东八区的日期时间,存在必然的误差,datetime类型存储数据基本上是原样输入和输出;
2025-11-17 22:00:11
403
原创 【问题解决】org.springframework.web.util.NestedServletException Handler dispatch failed;
这个错误的根本原因是从 Java 9 开始,不再默认提供。通过手动添加JAXB依赖或确保正确的打包配置,应该可以解决这个问题。如果你使用的是 Java 8,那么这可能是依赖未被正确打包的问题。
2025-11-16 16:46:54
853
原创 【MySQL系列文章】Linux环境下安装部署MySQL
本次安装部署主要针对Linux环境进行安装部署操作,系统位数6464MySQL版本:v5.7.38。
2025-11-16 15:46:06
915
原创 Redis 下载与安装 教程 windows版
设置键值对,通过key获取value,设置key的过期时间为5秒,5秒后查看所有的key现实name已经被删除。在命令中输入ping命令来检测redis服务器与redis客户端的连通性,返回PONG则说明连接成功了。,目前仍在维护,目前最新版本是 5.0.14,更新速度跟Redis官网也相差好几个大版本。为了方便,建议把Redis路径配置到系统变量Path值中,这样就省得再输路径了。redis.windows.conf可以省略,省略后,使用。下载好后找一个位置解压,例如我的位置是D:/Redis/
2025-11-15 13:09:44
237
原创 Nginx代理到https地址忽略证书验证配置
当proxy_ssl_server_name设置为on时,Nginx会在与后端服务器建立SSL/TLS连接时,使用请求头中的Host字段值作为SNI(Server Name Indication)的一部分。这意味着每次Nginx与后端服务器建立连接时,都会进行完整的SSL/TLS握手过程,这可能会增加延迟和服务器负载。如果proxy_ssl_server_name未设置或设置为off,Nginx将不会使用Host头部值作为SNI的一部分,这可能会导致SSL/TLS握手失败,特别是当后端服务器期望SNI时。
2025-11-15 12:07:33
494
原创 分布式监控Skywalking安装及使用教程(保姆级教程)
本文主要讲解分布式链路追踪监控系统Skywalking的安装及使用教程,从0到1,图文并茂的保姆级教程。SkyWalking是一款用于分布式系统跟踪和性能监控的开源工具。它可以帮助开发人员了解分布式系统中不同组件之间的调用关系和性能指标,从而进行故障排查和性能优化。它支持多种语言和框架,包括Java、.NET、Node.js等。它通过在应用程序中插入代理或使用特定的SDK来收集跟踪数据,并将这些数据发送到SkyWalking服务器进行分析和展示。分布式跟踪。
2025-11-14 15:31:35
827
原创 【保姆级教程】apache-tomcat的安装配置教程
一、前提二、文件目录含义三、运行tomcat四、运行成功效果五、使用tomcat打开本地端口为8080的网页六、用tomcat打开自己的.html文件七、用tomcat打开.html文件和鼠标右键打开.html文件的区别八、tomcat点击运行,cmd窗口出现后闪退解决九、附:修改端口号的方法。
2025-11-14 14:33:41
1075
原创 PostgreSQL的备份方式
是 PostgreSQL 内置的逻辑备份工具,可以将数据库导出为 SQL 脚本或二进制文件。WAL-G 是 PostgreSQL 的现代备份工具,支持增量备份和快速恢复,常用于云环境。按照这些方式定期备份 PostgreSQL 数据库,可以最大程度地保障数据的安全和可恢复性。Barman 是社区维护的 PostgreSQL 专用备份工具,支持物理备份和时间点恢复。PostgreSQL 提供多种方式进行备份,适用于不同需求的场景。是 PostgreSQL 提供的物理备份工具,适合对数据库进行完整二进制备份。
2025-11-13 18:55:48
333
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅