Java

Windows安装Maven教程

一、Maven介绍Maven是一种流行的构建工具,用于管理Java项目的构建过程、依赖项和项目生命周期。它提供了一种简单而灵活的方式来构建、测试和部署Java应用程序。 Maven使用一个XML配置文件来定义项目的结构和构建过程。通过这个配置文件,你可以指定项目的依赖项,定义构建阶段,配置插件以及其他构建细节。 使用Maven,你可以轻松地管理你的项目依赖项。Maven会自动下载所需的库文件,并将

LeetCode刷题笔记

算法 1.差分数组+前缀和 1589. 所有排列中的最大和 - 力扣(LeetCode) 对于每一次遍历都有m个数需要加1,如果对这些数遍历,则需要O(m)复杂度,此时可以记录这m个数的差分数组: ​ 这样就可以把时间复杂度缩小到O(1),之后求前缀和就可以得到原来的数组。 2.线性筛(欧拉筛)求素数 2601. 质数减法运算 - 力扣(LeetCode) 3.二分查找 二分法的 5 种经典应

Mybatis 学习

1. 第一个程序 1.1 配置数据库 表中包含id、name、password 1.2 配置pom.xml mysql-connector 5.几有问题,用8.几 mybatis junit <build <resources中的directory、includes、filetering中为false。否则在junit的测试中,xml文件会被过滤 1.3 准备POJO层数据 类有id、

Springboot笔记

组合注解@Spring BootApplication 来代替@EnableAutoConfiguration和@ComponentScan 采用@RestController组合注解代替@Controller和@ResponseBody 基础配置 Didiproperties.java application.yaml HelloController.java maven中

关于java中使用UUID这件事

相关包 java.util.UUID; 具体实现 去掉 - 给定字符名称获取uuid 还有其他方法,以后再百度吧

Redis的三大问题

一般我们对缓存读操作的时候有这么一个固定的套路: 如果我们的数据在缓存里边有,那么就直接取缓存的。 如果缓存里没有我们想要的数据,我们会先去查询数据库,然后将数据库查出来的数据写到缓存中。 最后将数据返回给请求 代码例子: 但这样写的代码是不行的,这代码里就有我们缓存的三大问题的两大问题.穿透,击穿. 一,缓存雪崩 1.1什么是缓存雪崩? 第一种情况:Redis挂掉了,请求全部走

Spring Boot 中使用 Poi-tl 渲染数据并生成 Word 文档

本文 Demo 已收录到 demo-for-all-in-java 项目中,欢迎大家 star 支持!后续将持续更新! 前言 产品经理急冲冲地走了过来。「现在需要将按这些数据生成一个 Word 报告文档,你来安排下」 项目中有这么一个需求,需要将用户填写的数据填充到一个 Word 文档中,而这个 Word 文档是人家给定了的。换句话说,让你按照这个文档的内容格式生成新的文档。 什么是 Po

06当你“被发送”了一条微博时,到底发生了什么?

背景 2011 年微博真实出现的一次安全事件。整个事件的核心问题,其实出在这个可以点击的链接上。在这个事件中,黑客并不需要入侵到微博服务器中,只要用户点击了这个链接,就会“被发送”这样的博文。 Xss攻击是如何产生的? 本质:通过给定异常的输入,黑客可以在你的浏览器中,插入一段恶意的 JavaScript 脚本,从而窃取你的隐私信息或者仿冒你进行操作。 反射型xss 例如黑客诱导你点击某个链接,链

MinIO对象存储

MinIO简介 MinIO基于Apache License v2.0开源协议的对象存储服务,可以做为云存储的解决方案用来保存海量的图片,视频,文档。由于采用Golang实现,服务端可以工作在Windows,Linux, OS X和FreeBSD上。配置简单,基本是复制可执行程序,单行命令可以运行起来。 MinIO兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志

极验验证码破解思路

1.背景         最近整理以前的文件,发了一篇有意思的关于极验验证码破解思路的文章。现在回过头来思考感觉挺有意思的,分享给大家。     百度百科对极验的定义如下: 极验验证是一种在计算机领域用于区分自然人和机器人的,通过简单集成的方式,为开发者提供安全、便捷的云端验证服

springboot项目里面,如何实现同目录下的html页面之间的跳转

1、借用controller层 在controller层定义相关方法,借助中间层实现html页面之间的跳转; 试过了,很可行,但是比较麻烦,会增大controller层的负担; 2、直接定义一个能够将所有的界面跳转包含进去的controller(查资料发现,缺失好像没有直接html之间跳转的--调用模板的话,那是有的) controller层: html引用界面处: 这样比第一种要方便许多了;

webpack--loader

引言 因为webpack默认只能解析js资源,当我们要处理css等资源时,无法进行处理,所以我们就要通过loaderloader来载入加载器来对相应的资源做特定的解析。 报错案例 例如:我们直接在js中引入css文件再次编译时,会报错。 index.css 我们在main.js中引入它 在输入npx webpack命令时会报错: 解决方法 我们在webpack.conf.js文件中在modu

Java项目文件上传和下载

话不多说,拿到 Java 项目,跑起来。这是前后端分离的项目,前端比较简单,直接打开 html 文件。 仓库地址:https://gitee.com/hicey/file-manager 提供:分片上传、断点续传、秒传功能 另外的下载、删除功能 开发环境:JDK8,SpringBoot2.x,MySQL5.5,web-uploader 秒传 上传完成后再次选择这个文件就会启动秒传功能,在百度网盘等

3 计算机网络

1. OSI 的七层模型分别是?各自的功能是什么? OSI体系7层 应⽤层,负责给应⽤程序提供统⼀的接⼝; 表示层,负责把数据转换成兼容另⼀个系统能识别的格式; 会话层,负责建⽴、管理和终⽌表示层实体之间的通信会话; 传输层,负责端到端的数据传输; ⽹络层,负责数据的路由、转发、分⽚; 数据链路层,负责数据的封帧和差错检测,以及 MAC 寻址; 物理层,负责在物理⽹络中传输数据帧; TCP/

视野修炼-技术周刊第53期

笔者在GitHub开了个 discussion 🔥 技术&开源&文章推荐,欢迎读者推荐贡献内容或者知识渠道 欢迎来到第 53 期的【视野修炼 - 技术周刊】,下面是本期的精选内容简介 🔥强烈推荐 rome 停止维护 Bun 1.0 正式发布 - 遥遥领先 npkill - 轻松查找和删除 node_modules 文件夹 🔧开源工具&技术资讯 Web Infra:Bu

spring boot中使用spring-data-jpa

spring boot POM文件中加入依赖: application.yml配置: 实体类:(@Table和@Column注解中name的值全部小写或全部大写,否则映射会出错) dao层: JpaRepository接口中有一些基本的增删改查方法,findByProductCode方法是我们自定义的,框架会帮我们根据方法名称生成查询sql, findByProductCode这个方法就会

在国企和央企当程序员体验,太真实了。。

大家好,又到了求职季,给大家分享一段一位网友的央企工作经历: 来源:zhihu.com/question/276681361/answer/2134441878 希望对于观望工作机会的小伙伴,有些参考~ 我校招加入了某垄断央企,在里面从事研发工程师的工作。下面我将分享一些入职后的一些心得体会。在国企中,开发是最底层最苦逼的存在,在互联网可能程序员还能够和产品经理argue,但是在国企中,基本都

GateWay工作流程+GateWay基础搭建

GateWay工作流程+GateWay基础搭建 核心流程图如下: 核心概念: 客户端向 Spring Cloud Gateway 发出请求。如果Gateway Handler Mapping确定请求与路由匹配,则将其发送到Gateway Web Handler 处理程序。此处理程序通过特定于请求的Fliter链运行请求。Fliter被虚线分隔的原因是Fliter可以在发送代理请求之前(pre)和

go微服务开发:go-zero入门教程(三)

背景:开发中,免不了要对代码进行debug调试,go也不例外,使用go-zero框架时,该怎么对项目进行调试呢?   以user模块为例,找到service/user/api/user.go,这是user模块的入口,打开user.go可以看到main函数。   TRANSLATE with x English Arabic Hebrew Polish

多线程笔记

多线程 程序运行时,即使自己没有创建线程,至少有main线程、gc线程和异常处理线程 每个线程在自己的工作内存交互,内存控制不当会造成数据不一致 每个进程都会有一段专用的内存区域但线程间可以共享相同的内存单元(包括代码与数据) 线程创建 不同线程的run()方法中的局部变量互不干扰 可以在任何一个线程中启动另一个线程 继承Thread类(此类已经实现Runnable

七、J.U.C

AQS 全称是 AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架 特点: 用 state 属性来表示资源的状态(分独占模式和共享模式),子类需要定义如何维护这个状态,控制如何获取锁和释放锁 getState - 获取 state 状态 setState - 设置 state 状态 compareAndSetState - cas 机制设置 state 状

Java基础学习——字符串

目录 1 String 概述   2 String构造方法代码实现和内存分析 2.1 创建方式 2.2 内存区 1. StringTable(串池) 2. 直接赋值创建字符串 方式 内存图 3. 通过new创建字符串 方式 内存图   3 字符串比较 3.1 “==”号比较的内容         1 String 概述 总结: 1.St

网络编程 1

网络编程 1 1.1软件架构 c/s架构∶全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、美团app、360安全卫士等软件。 B/s架构︰全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有IE、谷歌、火狐等。 1.要想实现网络通信,需要解决的三个问题: 问题1:如何准确地定位网络上一台或多台主机 问题2:如何定位主机上的特定的应用 问题

粘包

由于TCP协议设计的原因,如果数据量少的话,则会整合多个数据包,然后再一起发送。如下所示, 我们使用一个Socket Client循环发送数据到服务端中,可以看到服务端只接收到一次数据 服务端handler接收并解析数据: 方案1: 如果客户端发送的数据是固定的,服务端可以直接固定读取n个字符串作为一次来使用,Netty在pipline中提供了FixedLengthFrameDecoder类

LeetCode279:完全平方数,动态规划解法超过46%,作弊解法却超过97%

欢迎访问我的GitHub 这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos 本篇概览 本篇概览 这是道高频面试题,值得一看 首先,这道题的难度是中等 来看题目描述: 示例1: 示例 2: 提示: 解题思路 该题的解题思路是动态规划,核心解法有两点: 数字i,可能是某个数字的平方,例如数字9是数字

Java 抽象类能不能实例化

短回答就是:不能   这里有 2 个概念,什么是抽象类和什么是实例化。   实例化 实例化简单来说就是为 Java 中使用的对象分配存储空间。 抽象类 从代码上来说,抽象类就是一个用 abstract 关键字来修饰的类。 这个类除了不能被实例化以外,其他都能做。 在面向对象的概念中,所有的对象都是通过类来描绘的,但是反过来,并不是所有的类都是用来描绘对象的

补环境框架笔记

补环境框架笔记 1.浏览器环境下一些特殊的变量 window === self window === top window.self === self.top.window document.all 能得到HTMLAllCollection对象 typeof document.all 却是 undefined 2.fiddler插件个函数最新的顺序: OnBoot: 初始化时 OnA

RThemeV3部署优化

前言 RTheme虽然使用了部分JavaScript脚本来处理主题构建页面中的一些功能(搜索,Feed生成),但其本质还是纯Html。 主题默认是使用Github Action来完成脚本功能处理,本身Github Action是个好东西,但它的操作是在提交完文件后直接进行的,这样会引起仓库文件两次提交。 所以当你把这个仓库直接部署到Vercel这类云函数平台时,就会遇到一个问题:重复构建(Verc

06-MVVM模型

每个 Vue 应用都是通过用 Vue 函数创建一个新的 Vue 实例开始的: Vue 的设计虽然没有完全遵循 MVVM模型,但是也受到了它的启发。因此在文档中经常会使用 vm (ViewModel 的缩写) 这个变量名表示 Vue 实例。   MVVM模型 M:模型(Mdel),对应Vue的data数据 V:视图(View),对应V

在flink-1.17中测试执行流处理版本的单词计数程序时,出现"Exception in thread "Thread-5" java.lang.IllegalStateException: T

场景描述 采用 单作业模式提交作业后发现报错了  报错内容 解决方式 flink-conf.yaml配置文件中增加如下设置 再次提交作业正常了;

<<  <  683  684  685  686  687  688  689  690  691  692  693  >  >>