Java

java流程控制01用户交互Scanner

用户交互Scanner Scanner对象 Java给我们提供了这样一个工具类,用于获取用户输入(接收键盘数据)。 java.util.Scanner 使用Scanner类来获取用户输入 基本语法: Scanner dataName = new Scanner(System.in); 通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要

Redis分布式锁笔记

1 redis 分布式锁实现原理 所谓分布式锁,应当基本如下几项核心性质: • 独占性:对于同一把锁,在同一时刻只能被一个取锁方占有,这是锁最基础的一项特征 • 健壮性:即不能产生死锁(dead lock). 假如某个占有锁的使用方因为宕机而无法主动执行解锁动作,锁也应该能够被正常传承下去,被其他使用方所延续使用 • 对称性:加锁和解锁的使用方必须为同一身

Codespaces个性化后台服务器配置指南

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 前文概览 在前文《浏览器上写代码,4核8G微软服务器免费用,Codespaces真香》中,咱们以一个Java程序员的视角体验了GitHub的Codespaces产品的beta版,用浏览器编码并运行,体验上接近桌面版vscode,并且还能免费使用4核

MarkDaown学习之Typora

MarkDaown学习 标题 二级标题 三级标题     字体 你好 ***斜体加粗 你好 **加粗显示 你好 ~~废弃横线     引用 Java > 引用 分割线     图片   超链接 点击跳转百度   列表 有序列表 1. A B C 无序列表 -+空格 A b

vagrant实战爬坑

为什么要用到这个技术? 简单来说,vagrant是一个操作虚拟机的工具。 它提供了一套高效而便利的虚拟机管理方式,通过命令和配置文件,当然也要基于vagrant自身的约定,就能很快的完成一套开发环境的部署,并可以打包传播,极大的方便了在工作环境中,各个开发环境不一致的问题,也解决了重复配置环境的浪费 技术原理 主要流程就是读取Vagrantfile配置文件里指定的变量,然后进行转换调用虚拟机软

Seata AT模式

Seata 1.6.1 可参考文档 官网Seata AT模式 官网Seata AT实现博客 基本术语 TC (Transaction Coordinator) - 事务协调者 维护全局和分支事务的状态,驱动全局事务提交或回滚。就是Seata Server。 TM (Transaction Manager) - 事务管理器 定义全局事务的范围:开始全局事务、提交或回滚全局事务。可以理解为Glob

注册中心/配置管理 —— SpringCloud Consul

Consul 概述 Consul 是一个可以提供服务发现,健康检查,多数据中心,key/Value 存储的分布式服务框架,用于实现分布式系统的发现与配置。Cousul 使用 Go 语言实现,因此天然具有可移植性,安装包仅包含一个可执行文件,直接启动即可运行,方便部署 Consul 安装与启动 以 windows 为例,在官网下载 Consul:https://www.consul.io/ 下载

【Maven】打包补充依赖的操作记录

题外话 每次搞maven环境,总是觉得很痛苦,痛苦的根源源于,无从下手。 要说maven 有多难,自然也不能这样说,究竟也是因为没有系统地去学习,和没有把踩过的坑积累成经验,以至于每一次都踩差不多的坑,浪费相当的时间,打击相当的信心,于是觉得这是一道铜墙铁壁。 每每遇到这些环境问题,首先就觉得,这玩意很麻烦。 遇到的一些问题 1、401认证失败 然后,这个server究竟在哪里用到呢? 这个s

领域驱动设计(DDD):从基础代码探讨高内聚低耦合的演进

大家好,我是付威,一名已在编码第一线奋斗了十余年的程序员。在2019年我初次接触到领域驱动设计(Domain-Driven Design,简称DDD)的概念。在我的探索中,我发现许多有关DDD的教程过于偏重于战略设计,充斥着许多晦涩难懂的概念,导致阅读起来相当艰难。有些教程往往只是解释了DDD的概念,而未深入探讨为何要采用这种方式以及这样做能带来哪些好处,这导致很多人在实践应用DDD时遇到了诸多难

Java8编程 轻松驾驭数据流

Stream API 是 Java 8 中最重要的新特性之一,它是处理集合和数组的一种新方式。它提供了一种简单、灵活和可读的方式来处理集合和数组中的元素,从而使代码更加简洁、高效和易于维护。   1. 原理介绍   Stream API 的核心是 Stream 接口,它表示一组元素的序列,可以按需进行计算。Stream 接口提供了大量的中间操作和终端操作,可以用于过滤、映射、排

Maven——工程依赖pom.xml备份

 一、这是一简单的 maven 子模块互相依赖 WorldApp 中调用 core模块中 Bag 类。 注意:打包 mvn package 时,要在含 modules 的父工程目录下进行。 最终 mvn package 打出的 jar 包,可运行   二、三层 pom.xml

第二十一节 API(正则表达式)

正则表达式 1.1 正则表达式的概念及演示 在Java中,我们经常需要验证一些字符串,例如:年龄必须是2位的数字、用户名必须是8位长度而且只能包含大小写字母、数字等。正则表达式就是用来验证各种字符串的规则。它内部描述了一些规则,我们可以验证用户输入的字符串是否匹配这个规则。 先看一个不使用正则表达式验证的例子:下面的程序让用户输入一个QQ号码,我们要验证: QQ号码必须是5--15位长度 而且

两步实现springBoot导出带动态表格的word docx文档

1.第一步 导入poi依赖 2.第二步 创建导出接口   运行结果:   ⎛⎝官萧何⎠⎞一只快乐的爪哇程序猿;邮箱:1570608034@qq.com

Leetcode 142. 环形链表II(Linked list cycle ii)

题目链接 给定一个链表的头节点head, 返回链表开始入环的第一个节点。. 如果链表无环, 则返回 null. 如果链表中有某个节点, 可以通过连续跟踪next指针再次到达, 则链表中存在环. 为了表示给定链表中的环, 评测系统内部使用整数pos来表示链表尾连接到链表中的位置(索引从 0 开始). 如果pos是-1, 则在该链表中没有环. 注意: pos不作为参数进行传递, 仅仅是为了标识链表的实

2023/08/19

键盘录入行数,输出打印杨辉三角形 两种格式杨辉三角形 将两个一维数组合并,并安照升序排列  

【开发】代码编写规约

一、如何精准命名 命名过于宽泛 问题描述: 命名过于宽泛,无法精准描述。这是很多代码在命名上存在的严重问题,也是代码难以理解的根源所在:data、info、flag、process、handle、build、maintain、manage、modify 等词语。这种情形不加前缀容易导致界定模糊。 修改意见: 命名要能够描述出这段代码在做的事情。 一个好的名字应该描述意图,而非细节。 我们之

2-08-Feign-自定义配置

Feign可以支持很多的自定义配置,如下表所示: 类型 作用 说明 feign.Logger.Level 修改日志级别 包含四种不同的级别:NONE、BASIC、HEADERS、FULL feign.codec.Decoder 响应结果的解析器 http远程调用的结果做解析,例如解析json字符串为java对象 feign.codec.Encoder 请求参数编码 将请求参数

KubeSphere 社区双周报 | Java functions framework 支持 SkyWalking | 2023.8.4-8.17

KubeSphere 社区双周报主要整理展示新增的贡献者名单和证书、新增的讲师证书以及两周内提交过 commit 的贡献者,并对近期重要的 PR 进行解析,同时还包含了线上/线下活动和布道推广等一系列社区动态。 本次双周报涵盖时间为:2023.08.04-2023.08.17。 贡献者名单 新晋 KubeSphere Contributor 本两周共有 3 位新晋 KubeSphere Con

iwebsec-文件上传 01 前端JS过滤绕过

01、题目分析 事实上,文件上传过滤是很正常的,需要自行判断是前端过滤还是后端过滤,一般上传木马的时候可以进行抓包,如果直接点击上传直接弹出禁止上传的界面,而没有抓到数据包,那就说明是前端js过滤,但是这个题目已经说明了是前端js过滤,就不用再测试了 02、文件上传 先用哥斯拉创建一个一句话木马 命名为1.php 然后尝试上传木马 被前端js拦截 那就老办法,把1.php修改成1.jpg,然后上

什么是无锁化

无锁简介 无锁分为两大派系: 乐观派系:它们认为事情总会往好的方向去发展,总是认为坏的情况发生概率特别小,可以无所顾忌的做任何事情. 悲观派系:它们总会认为发展事态如果不及时控制,以后就无法挽回,即时此种局面不会发生的情况下。 上述两大派系映射到并发编程中就如同加锁与无锁策略,即加锁是一种悲观策略,无锁是一种乐观策略,因为对于加锁的并发程序来说,它们总是认为每次访问共享资源时总会发生冲

burpsuite靶场----XSS----DOM型XSS2----innerHTML

burpsuite靶场----XSS----DOM型XSS2----innerHTML 靶场地址 https://portswigger.net/web-security/cross-site-scripting/dom-based/lab-innerhtml-sink XSS字典 链接:https://pan.baidu.com/s/1XAJbEc4o824zAAmvV85TOA 提取码:123

部署Kafka+ZK及其日志采集实战(系统版本:linux_CentOs_7.8)

部署ZK 部署Kafka 采用Slf4j采集日志(lombok) 需求 控制台输出访问日志,方便测试 业务数据实际输出到kafka 常用的框架 log4j、logback、self4j等 log4j、logback、self4j 之间有啥关系 SLF4J(Simple logging Facade for Java) 门面设计模式 |外观设计模式 把不同的日

Spring循环依赖即解决方案

本文会回答什么是循环依赖,Spring怎么解决循环依赖,Spring对于循环依赖无法解决的场景三个问题 1. 什么是循环依赖? 循环依赖其实就是循环引用,也就是两个或则两个以上的bean互相持有对方,最终形成闭环。比如A依赖于B,B依赖于C,C又依赖于A。如下图: 注意,这里不是函数的循环调用,是对象的相互依赖关系。循环调用其实就是一个死循环,除非有终结条件。 Spring中循环依赖场景有: (

java实现本地数据与阿里云MySQL数据同步:动态表创建与数据更新

在开发应用程序时,经常需要将数据从一个数据源(如API、外部数据库等)同步到本地数据库中。这可能涉及到不同的表结构和数据模式。在这种情况下,一个主要的挑战是,如果本地数据库中的表结构与源数据不匹配,应该如何自动适应这些变化并确保数据同步的顺利进行。 解决方案:动态表创建与数据更新 为了实现数据同步,并根据需要创建表并更新数据,我们可以采用以下步骤: 检查表是否存在: 在同步数据之前,首先检查目

linux之shell脚本quickStart

这篇文章主要参考于《跟老男孩学linux运维:Shell编程实战》,方便写shell脚本时参考,只列一些shell脚本中的容易混淆的知识点。 目录1 变量1.1 普通变量1.2 shell特殊变量1.3 shell特殊扩展变量2 运算符2.1 空格2.2 (()) 与 [ ]2.3 || 与 &&3 常用命令3.1 read3.2 echo3.3 eval3.4 双小括号(())

burpsuite靶场----XSS----DOM型XSS3----href

burpsuite靶场----XSS----DOM型XSS2----href 靶场地址 https://portswigger.net/web-security/cross-site-scripting/dom-based/lab-jquery-href-attribute-sink XSS字典 链接:https://pan.baidu.com/s/1XAJbEc4o824zAAmvV85TOA

uniapp APP微信登录、支付、分享以及支付宝支付 实战踩坑记录

1、微信支付和支付宝支付   先上代码、封装好了的组件    html部分      <template> <view class="rows"> <!------------------------------充值的弹框开始------------------------------> <uni-popup class="common-popu

多线程 问答

1、线程的状态或什么周期 新建,就绪,运行,阻塞,销毁 new, runnable,running,blocked,terminated  java角度     2、java里面,wait和 sleep的区别 wait 是object的方法,等待时会释放锁 sleep是 线程Thread的方法,睡眠时不会释放持有的对象锁,需要捕获异常。结束睡眠后,进入 runna

关于Mybatis中传入布尔值,但是数据表中对应字段是tinyint也能成功

MyBatis会在底层自动将Java布尔值转换为适当的数据库值,以及将数据库中的TINYINT值转换为Java布尔值。

gcc make cmake ninja的区别

理清C++编译过程用到的工具概念 ref: GCC、CMake、CMakelist、Make、Makefile、Ninja啥关系?一图讲透! - 知乎 (zhihu.com) 早先学C++的时候,因为只需要点击IDE的运行按钮,程序就可以跑起来,写过最复杂的只不过是几个文件的学生管理系统。 现在要重新拾起C++,看的项目和之前的不可同日而语,构建系统也复杂的多。要补课了。 GCC 一切的开始 1

<<  <  781  782  783  784  785  786  787  788  789  790  791  >  >>