Java

使用Java实现nginx反向代理的功能

需求 访问某个url后缀时,例如:/abc/*,自动路由到指定http服务地址http://myhost/* 代码 反向代理处理器

设计模式-享元模式

享元模式 享元模式,又称为轻量级模式,是对象池的一种实现,类似于线程池。其宗旨是共享细粒度对象,将多个对同一对象的访问集中起来,不必为每一个访问创建单独的对象,以此来降低对内存的消耗,属于结构型模式。 享元模式把一个对象的状态分为内部状态和外部状态。内部状态即是不变的,外部状态是变化的。然后通过共享不变的部分,达到减少对象数量并节约内存的目的。 享元模式的本质是缓存共享对象,降低内存消耗。 角色

fastDFS+SpringBoot实现文件防盗链

FastDFS内置防盗链采用Token的方式。Token是带时效的,也就是说在设定的时间范围内,比如1分钟,token是有效的。token包含了文件id、时间戳ts和密钥。 FastDFS在URL中带上当前时间戳和带时效的token,参数名分别为ts和token。Token的生成和校验都是在服务端,因此不会存在安全问题。 例如: http://你的IP/meng/M00/00/00/rBFE2

dbt 部分macro 中namespace的使用简单说明

比如在dbt adapter 中的snapshot_check_all_get_existing_columns 中就使用了namepace 这个对象,以下简单说明下 namespace 对象的作用 实际上就是进行跨scope 的数据共享,因为jinja2 每个block 中的设置的变量是不能跨范围共享,解决方法就是使用namespace 参考使用 {% set ns = nam

C#.NET与JAVA互通之MD5哈希V2024

C#.NET与JAVA互通之MD5哈希V2024   配套视频:     要点: 1.计算MD5时,SDK自带的计算哈希(ComputeHash)方法,输入输出参数都是byte数组。就涉及到字符串转byte数组转换时,编码选择的问题。 2.输入参数,字符串转byte数组时,编码双方要统一,一般为:UTF-8。 3.输出参数,byte数组转字符串时,编码双方要统一,一

spring容器启动创建javaBean步骤

下面三张图是我创建feign服务的方法,以feign为例来看javaBean的创建    结论:spring容器启动时有个refresh方法,会将工程目录所有要生成 javaBean的类文件都加载存进一个BeandefinitionMap中,键值对形式,Key是beanName, value是Bean描述文件,然后根据描述文件进行javaBean实例化。   由

HTML5笔记

1.HTML:超文本标记语言 3.双标签:成对出现的标签 单标签:只有开始标签,没有结束标签 edg:换行: 水平线: 4.VS Code快速生成html骨架:!(英文)+Enter/Tab 5.标签之间的两种关系:(1)父子关系(嵌套) (2)兄弟关系(并列) 6.标题标签: ~ 特点:(1)独占一行 (2)文字加粗 (3)字号逐渐减小 tips:h1标

设置springboot scheduled多线程,解决多个定时任务并发问题(转载)

项目上有几个定时任务都是同时间点要执行的,最近发现多个定时任务为单线程排队执行,后来经过查资料发现@schedule注解默认是单线程的,如果定时任务比较多或者有的定时任务比较耗时,会影响到其他定时任务的执行,通过以下方法解决多个定时任务同时并发执行问题。第1种:增加配置类 @Configurationpublic class ScheduleConfig { /** * 修复同一时间

SpringBoot集成MyBatis-Plus生成代码

SpringBoot集成MyBatis-Plus代码生成器 背景 ​ MyBatis-Plus代码生成器相较于MyBatis代码生成器,可以多生成controller层和service层,并且配置更丰富,通过对Freemarker默认模板的修改和增加自定义模板配置适配,可提升开发效率 操作步骤 项目目录结构 MyFreemarkerTemplateEngine继承FreemarkerTempl

OpenTelemetry 实践指南:历史、架构与基本概念

背景 之前陆续写过一些和 OpenTelemetry 相关的文章: 实战:如何优雅的从 Skywalking 切换到 OpenTelemetry 实战:如何编写一个 OpenTelemetry Extensions 从一个 JDK21+OpenTelemetry 不兼容的问题讲起 这些内容的前提是最好有一些 OpenTelemetry 的背景知识,看起来就不会那么枯燥,为此这篇文章就来做一个入

实战分析Java的异步编程,并通过CompletableFuture进行高效调优

一、写在开头 在我们一开始讲多线程的时候,提到过异步与同步的概念,这里面我们再回顾一下: 同步:调用方在调用某个方法后,等待被调用方返回结果;调用方在取得被调用方的返回值后,再继续运行。调用方顺序执行,同步等待被调用方的返回值,这就是阻塞式调用; 异步:调用方在调用某个方法后,直接返回,不需要等待被调用方返回结果;被调用方开启一个线程处理任务,调用方可以同时去处理其他工作。调用方和被调用方是异步

代码随想录 算法训练营 day9 Leetcode151 反转字符串单词 karma55 右旋转字符串 28 实现strStr() Leetcode 459 重复字符串

Leetcode 151 反转字符串单词 题目链接 讲解 此题方法很多 很重要 注重基础解法 class Solution { public String reverseWords(String s) { char[] initialArr = s.toCharArray(); //新字符数组 char[] newArr = new char

清新优雅&高颜值!一个基于Vue3实现的后台管理模板

大家好,我是 Java陈序员。 今天,给大家介绍一个高颜值的开源后台管理模板,已经收获了 8k+ Star! 关注微信公众号:【Java陈序员】,获取开源项目分享、AI副业分享、超200本经典计算机电子书籍等。 项目介绍 SoybeanAdmin —— 一个清新优雅、高颜值且功能强大的后台管理模板。基于最新的前端技术栈,包括 Vue3、 Vite5、 TypeScript、 Pinia 和 U

Java 21新增的语法特性

Java 21新增的语法特性 目录Java 21新增的语法特性引言record模式 [JEP 440]用于switch的模式匹配 [JEP 441]序列集合 [JEP 431]虚拟线程 [JEP 444]Java 21的其他改进 说明1:本文大量参考了JEP文档与Oracle官方文档,部分文字直接引自这两个文档并进行了适当的修改。 说明2:本文代码详见《面向实践的Java程序设计教程》教材的代码仓

nuxt开发问题记录

1.nuxt加载svg 用的是nuxt-icons modules: ["@element-plus/nuxt", "nuxt-lodash", "@pinia/nuxt", "@nuxtjs/tailwindcss", "nuxt-icons", "@nuxtjs/device"], 使用的时候  我遇到了svg整个是黑色的   <NuxtIcon name=

javascript - 异常

如果偷懒,就这么干,要是没有很复杂的逻辑,不需要区分异常类型,这么写也没啥缺点。 ES5 语法 ES6 语法 疯狂的妞妞 :每一天,做什么都好,不要什么都不做!

事件注册与事件代理学习

<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document&l

拓展阅读:促进团队合作的代码管理

目录拓展阅读:促进团队合作的代码管理一、什么是代码管理?二、为什么需要分布式版本控制系统及Git的诞生三、Git的发展四、使用Git管理你的项目代码4.1 Git的基本概念4.2 Git操作入门五、Git的社会价值参考资料思考与练习 拓展阅读:促进团队合作的代码管理 一、什么是代码管理? 代码管理,又称版本控制系统,是软件开发过程中不可或缺的一部分。它的发展历程与计算机技术的进步和软件开发实践的变

6.10软工日报

学习了使用sa-token 配置pom

查找标签,节点操作,事件,JS事件案例

Ⅰ查找标签 直接查找标签和间接查找标签是在Web开发中常用的两种方式。 操作页面的时候要使用document对象 【一 】直接查找标签getElement 【1】通过ID查找getElementById 根据元素的ID属性直接获取到对应的HTML元素。 (1)语法 (2)示例 【2】通过class值找getElementsByClassName 根据标签名称获取匹配的所有元素。

五子棋java

JAVA课程设计 利用所学习的JAVA知识设计一个五子棋小游戏 1.团队名称、团队成员介绍 王世俊 计科22-1 2.git地址 https://github.com/joeeojjoe/chess 项目git提交记录截图 4.项目架构 类ChessFrame主要功能是创建五子棋游戏主窗体和菜单 类ChessModel实现了整个五子棋程序算法的核心 类MainPanel主要完成如下功能: 1、

springCloud熔断器hystrix测试

    已知提供方服务没启动,通过消费者服务调用该提供方服务,进入熔断状态,进入熔断方法。 配置的消费者服务和熔断器工厂类     调用消费者服务 成功进入熔断回调 接下来根据调试步骤走一下 当使用feign接口调用服务时,首先创建一个(org.springframework.cloud.openfeign.FeignCircuitBreakerIn

MyBatis 执行存储过程

Mapper.xml ReportMapper.java ReportController.java 输出结果:

本地搭建otlp

采集+监控2.0 1.应用 LB 配置文件,nginx自带的ngx_http_stub_status_module提供的/nginx_status(可自定义命名)端点输出的是nginx自己的简单状态信息 配置好启动应用即可 2.metrics 1.prometheus 数据源 配置开机自启动 配置文件暂时不用修改 启动 3.logs 1.loki 下载 配置 启动文件 配置

Chrome使用回退,出现表单提交失败,ERR_CACHE_MISS问题

是什么、为什么、怎么办 "ERR_CACHE_MISS" 错误通常发生在你使用浏览器的“返回”按钮时。这种错误与浏览器处理缓存数据的方式有关,特别是在处理表单和POST请求时。 常见原因 1. 表单重新提交 当你导航回包含表单提交的页面(通常是POST请求)时,Chrome可能会提示你重新提交表单。如果表单数据不再存在于缓存中,浏览器无法自动重新提交它,导致 "ERR_CACHE_MISS" 错

Ruoyi集成flyway后启动报错的解决方法

ruoyi系列框架是开源中非常好的源码平台,使用宽松的开源协议进行源代码的开放。不管是单体版、前后端分离甚至是微服务架构,均提供了相应的代码。基于ruoyi可以做自己的后台系统,也可以学习很多技术的集成。 而flyway是java里面的数据库脚本自动管理工具,使用flyway可以在应用程序升级时自动管理sql脚本,从而避免用户忘记而带来的没有执行脚本引起的问题。是多版本开发中非常好用的sql版本管

fasterxml ToStringSerializerBase报错

ToStringSerializerBase报错报错内容整合dubbo时报错 Caused by: java.lang.NoClassDefFoundError: com/fasterxml/jackson/databind/ser/std/ToStringSerializerBase at com.fasterxml.jackson.datatype.jsr310.JavaTimeModule.

有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

根据题目意思先来缕清一下思路: 第一年 初始值为 1 (也就是刚开始一头母牛) 第二年   2(也就是刚开始一头母牛+一头小母牛) ) 第三年   3(也就是刚开始一头母牛+两头小母牛) ) 第四年年   4(也就是刚开始一头母牛+三头小母牛) ) 第五年   6(也就是刚开始一头母牛+加上四头小母

Spring Junit 测试报错 java.lang.IllegalStateException

写测试代码的时候出现了java.lang.IllegalStateException: Could not load TestContextBootstrapper [null]. Specify @BootstrapWith's 'value' attribute or make the default bootstrapper class available. 代码如下: 最后发现是spri

<<  <  329  330  331  332  333  334  335  336  337  338  339  >  >>