Java
Jenkins+Docker 实现一键自动化部署项目
Jenkins+Docker 实现一键自动化部署项目!步骤齐全,少走坑路! JAVA编程Linux学习 2023-07-01 08:10 发表于山东 收录于合集 #docker4个 #Jenkins1个 本文章实现最简单全面的Jenkins+docker+springboot 一键自动部署项目,步骤齐全,少走坑路。 环境:centos7+git(gitee)
Java 中使用 OkHttpClent 请求接口 get方式 post方式
学习记录,不喜勿喷 什么是OkHttp 一般在Java平台上,我们会使用Apache HttpClient作为Http客户端,用于发送 HTTP 请求,并对响应进行处理。比如可以使用http客户端与第三方服务(如SSO服务)进行集成,当然还可以爬取网上的数据等。OKHttp与HttpClient类似,也是一个Http客户端,提供了对 HTTP/2 和 SPDY 的支持,并提供了连接池,GZIP
Nginx一网打尽:动静分离、压缩、缓存、黑白名单、跨域、高可用、防盗链、SSL、性能优化
架构营 2023-07-03 07:10 发表于上海 收录于合集 #nginx2个 #架构172个 #web2个 引言 一、性能怪兽-Nginx概念深入浅出 二、Nginx环境搭建 三、Nginx反向代理-负载均衡 四、Nginx动静分离 五、Nginx资源压缩 六、Nginx缓冲区 七、Nginx缓存机制 八、Nginx实现IP黑白名单 九
使用docker-compose部署zabbix服务
🔨 docker-compose安装 🔑 创建docker-compose.yml 🧲 本地创建挂载目录 💼 运行docker-compose 使用浏览器访问登录页面,默认密码为Admin/zabbix
WebSocket 协议详解
一、WebSocket 协议背景 早期,在网站上推送消息给用户,只能通过轮询的方式或 Comet 技术。轮询就是浏览器每隔几秒钟向服务端发送 HTTP 请求,然后服务端返回消息给客户端。 轮询技术一般在浏览器上就是使用 setInerval 或 setTimeout 这种方式的缺点: 需要不断的向服务端发送 HTTP 请求,这种就比较浪费带宽资源。而且发送 HTTP 请求只能由客户端发起,这
如何在Windows上安装MySQL和MySQL Workbench
如果你想学习 MySQL,从一个好的客户端开始非常有帮助——尤其是当你刚刚开始你的旅程时。 有很多客户端可以满足您基于 MySQL 的需求,例如 XAMPP、DataGrip 等。其中,我更喜欢MySQL Workbench。顺便说一句,它是完全免费的。 在本教程中,我将向您展示如何从头开始安装和配置此 MySQL 和 MySQL 工作台的 Windows 计算机。 (更|多优质内|容:java5
如何使用React和Framer Motion构建图像轮播
您可能在许多现代应用程序中遇到过轮播。这些多功能网页元素以各种名称(例如滑块或旋转器)而闻名,它们以视觉上吸引人的滑动或旋转方式展示内容。 轮播可以帮助您节省空间、增强用户界面并提供出色的用户体验。 轮播已成为 UI 设计的主要内容,通常用于显示图像、推荐等。创建引人入胜的动态界面时,它们是不可或缺的。 在本文中,我们将深入探讨使用 React 和 Framer Motion 构建图像轮播的过程,
SpringBoot教学资料6-SpringBoot登录注册功能实现(带简单前端)
项目样式: SQL: 项目结构: pom.xml: application.properties: login.html: regist.html: User.java: UserMapper.xml: Us
springboot封装redission的分布式锁逻辑为注解
场景概述 使用分布式锁的时候,每次都需要使用try catch处理方法中的逻辑。考虑是否可以这块逻辑抽离出来。 实现 在自定义的注解中添加属性来设置锁的等待时间、租赁时间和时间单位 在切面类中获取注解的属性值,并将其传递给Redisson锁对象 在Spring Boot应用程序中启用AOP,并在需要加锁的方法上使用自定义的注解 在上述示例中,waitTime属性设置为5,表示等待锁的最长时间
js的中的函数(一)
函数的定义 函数本质上是自变量和因变量之间关系的一种抽象描述,在JavaScript中我们这样定义一个函数: 上述add函数的定义如下: function指出这是一个函数定义; add是函数的名称; (a,b)括号内列出函数的参数,多个参数以,分隔; { ... }之间的代码是函数体,可以包含若干语句,甚至可以没有任何语句。 请注意,函数体内部的语句在执行时,一旦执行到return时,函
03_MyBatis02
1. 深入Mybatis映射配置文件 1.1. CRUD语句定义 查询语句 UserMapper.java接口中 UserMapper.xml配置文件中 MybatisTest.java单元测试类 插入语句 普通插入语句 UserMapper.java接口中 UserMapper.xml配置文件中 MybatisTest.java单元测试类 细节 mybatis默认会开启事务执行操作,
图片文字自管理敏感词集成到文章审核中
1、在heima-leadnews-common中创建工具类,封装一下tess4j 2、修改审核文章中的图片审核逻辑 将图片敏感词审核集成到图片审核中。
聊聊不同集群的微服务如何通过feign调用
前言 之前业务部门的某项目微服务调用关系如下图 后因业务改造需要,该项目需要将服务A部署到另外一个集群,但服务A仍然需要能调用到服务B,调用关系如下图 之前调用方式是负责服务B的开发团队提供相应的feign客户端包给到服务A开发团队,服务A开发团队直接将客户端包引入到项目,在通过@EnableFeignClients来激活feign调用,现在跨了不同集群,而且2个集群间的注册中心也不一样,之前
使用do-while分页调用接口
使用场景 远程请求接口,接口每次请求数据条数有限制,只能用分页多次调取再合并,需要使用总条数total和每次最大分页size去计算调用次数 之前都是老实的使用取模取余来计算,,do-while会看起来优雅简单很多。 代码示例 附:分页计算公式
在Windows下安装使用Kafka
准备工作 Java环境 Kafka安装包(已包含zookeeper) 安装步骤 1 Java安装 自行百度 2 下载、安装Kafka 打开 下载地址 选择下图红框中的版本,Kafka包名组成: Scala版本 - Kafka自身版本 下载完成之后解压,目录如下图: 3 启动服务 3.1 启动ZooKeeper 打开kafka_2.12-2.1.0bin
您应该了解的有用Linux命令
是否感觉您已经掌握了 Linux 的基础知识并准备好提升您的技能?好消息 - 有许多您可能不知道的强大命令。 在本文中,我将向您介绍一些鲜为人知的 Linux 命令,这些命令将帮助您成为一名更有生产力和效率的开发人员。 无论您是想提高工作效率、加强系统安全性,还是只是想向其他开发人员展示您的 Linux 技术,这些命令都能满足您的需求。 (更|多优质内|容:java567 点 c0m)  
如何通过Java读取到Windows系统日志evtx文件
近日公司有个需求,需要调研如何使用Java来读取Windows日志文件(类型:应用程序,安全,Setup,系统) 一番调研以后,在仅使用java的基础上系统日志文件似乎不太可能(就个人调研结果来看),再通过多渠道查询(百度、chargpt),找到2个可能的实现的方案: 1、使用Java来调用C++方法 JNA(Java Native Access)是可以让Java调用C++生成的DLL(动态链接
Java并发工具包详解
针对并发编程,Java提供了很多并发工具类供我们使用,下面我们详细介绍一下。 Semaphore Semaphore,现在普遍翻译为“信号量”,以前也曾被翻译成“信号灯”,因为类似现实生活里的红绿灯,车辆能不能通行,要看是不是绿灯。同样,在编程世界里,线程能不能执行,也要看信号量是不是允许。信号量模型还是很简单的,可以简单概括为:一个计数器,一个等待队列,三个方法。在信号量模型里,计数器和等待队
panoply是什么?
Panoply是一款由美国国家航空航天局(NASA)下属的戈达德航天研究所(GISS)基于Java所开发的简易可视化软件。可以用于查看和绘制地球科学领域常用的netCDF, HDF, GRIB等数据格式。Panoply支持Macintosh, Windows, Linux三大PC操作系统。其中Windows端可实现一键打开netcdf文件。 参考:https://zhuanlan.zhihu.co
vscode不支持 java 1.8 问题
vscode不支持jdk1.8问题,实际上是 vscode 的 部分 java插件 不支持 java 1.8 有些插件要求 jdk 11 以上,可降级避开,不过没必要 有些插件要求 jdk17 以上 可以同时安装两个版本的jdk,例如 jdk1.8 和 jdk 17 在vscode的settings.json文件中,添加jdk配置,将java1.8设为默认 运行普通java程序,会
实战项目:构建基于Spring Boot和Vue.js的金融项目分享
学习Spring Boot和Vue.js结合的前后端分离项目可以按照以下步骤进行: 掌握Spring Boot: 学习Spring Boot的基本概念和核心特性,如自动配置、起步依赖、注解驱动等。 了解Spring框架的基本知识,如IoC容器、AOP、MVC模式等。 学习Vue.js: 学习Vue.js的基本语法、指令和组件,理解Vue实例、数据绑定、事件处理等概念。
swiper 缩略图(thumbs),设置slidesPerView: 5,缩略图高亮不跟随
根据swiper官网提供的写法, thumbs(缩略图) 缺少一个参数,所以缩略图高亮不跟随 这样就可以了
Solon Web 开发:四、认识请求上下文(Context)
Handler + Context 架构,是Solon Web 的基础。在 Context (org.noear.solon.core.handle.Context)里可以获取: 请求相关的对象与接口 会话状态相关的对象与接口 响应相关的对象与接口 或者理解所有请求与响应相关的,都在它身上。关于架构方面,可以再看看《想法与架构笔记》 1、三种获取 Context 的方式 a) 通过 Contr
Maven中央仓库地址大全
Maven中央仓库地址大全 加入社区 一、一般使用Maven中央仓库地址 http://www.sonatype.org/nexus/ http://mvnrepository.com/ (本人推荐仓库) http://repo1.maven.org/maven2 关于 Maven 远程仓库地址的配置方式有两种: 第1种:直接在项目的 pom.xml 文件中进行修改(不推荐,尤其是在多人协助的
ReentrantLock源码解析
并发指同一时间内进行了多个线程。并发问题是多个线程对同一资源进行操作时产生的问题。通过加锁可以解决并发问题,ReentrantLock是锁的一种。 1 ReentrantLock 1.1 定义 ReentrantLock是Lock接口的实现类,可以手动的对某一段进行加锁。ReentrantLock可重入锁,具有可重入性,并且支持可中断锁。其内部对锁的控制有两种实现,一种为公平锁,另一种为非公平锁.
EMAS热修复Sophix适配App加固的技术方案
一、问题描述 某阿里云EMAS客户的APK基于最新的线上版本发布了第十个补丁,发布1小时后在崩溃检测平台收集到crash日志,并收到用户反馈:部分手机上的APP会闪退。 客户开发人员紧急上报EMAS技术支持,双方沟通后初步判断是补丁加载导致APP闪退。同时我们本地和客户本地经过多次、多轮测试,没有一台手机可以复现闪退,此时崩溃率已达到9% 左右,经讨论决定先回滚本次补丁。 二、调查