自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(138)
  • 收藏
  • 关注

原创 Spring boot 发送文本邮件 和 html模板邮件

1.--邮箱验证码模板--> < body > < div style = " background-color : #ECECEC;font-family : 微软雅黑 , 黑体;" > < font face = " 微软雅黑 " size = " 5 " style = " color : rgb(255 , 255 , 255);

2024-03-28 09:50:51 457

原创 Ubuntu安装MySQL、Redis、Ningx、jdk等常用环境

protected-mode 是一种安全特性,如果设置为 yes,只允许本地连接。将其设置为 no 表示关闭保护模式,允许所有连接。在文件中添加以下内容,替换 your_domain_or_ip 和 /path/to/your/content 为你的实际域名或 IP 地址以及内容的路径。Nginx 的主配置文件是 /etc/nginx/nginx.conf,3.验证RabbitMQ是否已成功安装并正在运行。2.验证Redis是否已成功安装并正在运行。2.验证Nginx是否已成功安装并正在运行。

2024-03-04 16:49:10 1153

原创 VMware安装Ubuntu(保姆级)

3.选择Ubuntu 64位。8.修改处理器和内存的大小。1.选择典型安装就可以啦。9.选择需要使用的镜像。10.关闭 - 完成。7.输入用户名和密码。

2024-03-04 10:46:59 352

原创 Vmware Fusion 13 安装CentOS、Ubuntu、Windows11虚拟机

2.安装完成之后 重新启动虚拟机,此刻就可以看到登陆界面了。设置用户名和密码 一些简单的设置。1.以上Ubuntu安装好之后是没有图形化的虚拟机。2.虚拟机会自动重启,重新设置,点击。2.将下载好的镜像直接拖到虚拟机中。1.先将虚拟机关机,然后开始设置。2.把下载好的镜像拖到虚拟机中。2.把下载好的镜像拖到虚拟机中。3.安装成功后,安装Tools。3.直接回车(默认键盘布局)1.创建一个新的虚拟机。2.设置 处理器和内存。1.创建一个新的虚拟机。5.回车 (没有网络)10.设置用户名和密码。

2024-03-01 18:38:32 1717

原创 Mac新机必装软件

1.获取途径 App Store 或(官网)1.获取途径 App Store 或(官网)1.获取途径 App Store 或(官网)1.获取途径(GitHub)1.获取途径(中文官网)1.获取途径(中文官网)1.获取途径(中文官网)1.获取途径 (官网)1.获取途径 (官网)1.获取途径(官网)1.获取途径(官网)我选择的是 IINA。1.获取途径(官网)1.获取途径(官网)1.获取途径(官网)1.获取途径(官网)

2024-02-28 16:12:35 828

原创 VMWare下载安装(包含Windows和Mac)

6.接下来就可以愉快的安装你的虚拟机了。1.适用于Windows和Linux。2.也可以直接访问下载地址。2.可以直接访问下载链接。3.Linux下载之后。1.适用于MacOS。

2024-02-04 10:34:45 1395

原创 Mac安装Homebrew+MySQL+Redis+Nginx+Tomcat等

如果不知道自己是否安装 Homebrew,在终端输入,看看是否有显示。2.如果使用 4.x 最新的 JSON API 安装方式(推荐),添加以下环境变量配置。1.如果此前没有安装过 Xcode Command Line Tools。3.安装完成后,和 Windows 不太一样,如下两个文件是分开的。添加以下代码(PATH 换成自己的reids目录)3.会提示安装,按回车耐心等待安装完成。4.等所有请求结束之后,停止服务器。2.双击打开里面的pkg文件。2.进入到mysql数据库。2.安装Homebrew。

2024-02-04 09:00:37 1149

原创 MacOS安装JDK+Maven+Idea插件+nvm等

Mac安装jdk、Mac安装Meven、Mac安装nvm、Mac安装Nexus等

2024-02-02 15:24:55 1355

原创 VMware虚拟机安装macOS

1.选择自定义硬件3.内存给到6.5GB4.处理器给到2p 2c5.把iso镜像添加上然后选择关闭—完成 一一 然后就可以开启虚拟机了。

2024-01-31 22:29:21 1293

原创 Redis入门到实战-基础篇+实战篇+高级篇+原理篇

Redis入门到实战(基础+实战+高级+原理)

2024-01-25 21:19:13 173

原创 Windows安装JDK+Maven+Idea插件+nvm等

SpotBugs介绍 SpotBugs是Findbugs的继任者(Findbugs已经不再维护),用于对Java代码进行静态分析,查找相关的漏洞,SpotBugs比Findbugs拥有更多的校验规则。CodeGeeX可以根据自然语言注释描述的功能自动生成代码,也可以根据已有的代码自动生成后续代码,补全当前行或生成后续若干行,帮助你提高编程效率。SonarLint是一个代码扫描插件,可以随时分析出代码的编写质量,并指出问题所在,对编写规范的代码很有帮助。2.安装完成后,验证版本,出现如下警告。

2024-01-24 09:06:27 1048

原创 Vmware安装Windows11虚拟机

1.选择自定义硬件2.虚拟机硬件设置移除打印机3.内存给到4GB4.处理器给到2p 2c5.把iso镜像添加上然后选择关闭—完成。

2024-01-23 13:14:09 1322

原创 Docker-02-镜像&项目部署

1.首先通过命令创建一个网络# 1.首先通过命令创建一个网络 docker network create coke2…然后查看网络# 2.然后查看网络 ( 其中,除了coke以外,其它都是默认的网络) docker network ls3.让dd和mysql都加入该网络,注意,在加入网络时可以通过–alias给容器起别名# 3.让dd和mysql都加入该网络,注意,在加入网络时可以通过--alias给容器起别名# 这样该网络内的其它容器可以用别名互相访问!

2024-01-18 16:48:57 1250

原创 Docker中创建并配置MySQL、nginx、redis等容器

2.从容器nginx里复制配置文件到本地。2.重新启动nginx 并挂载到本地。4.修改文件 浏览器访问测试。3.查看复制后的本地文件。可以看到文件复制成功!

2024-01-18 09:36:14 847

原创 Docker-01-安装&基础命令

"Docker"一词指代了多个概念,包括开源社区项目、开源项目使用的工具、主导支持此类项目的公司 Docker Inc.,以及该公司官方支持的工具。这些技术和公司的同名可能会造成混淆。以下简要说明 Docker 以便区分:IT 软件"Docker"是支持创建和使用 Linux® 容器的容器化技术。开源 Docker 社区致力于改进这类技术,并免费提供给所有用户,使之获益。Docker Inc. 公司凭借 Docker 社区产品起家,主要负责提升社区版本的安全性,并将技术进步与广大技术社区分享。此外,它还

2024-01-15 21:28:25 1065

原创 jumpServer-02-安装与配置

jumpserver是由python编程语言开发的,旧版的是python2开发的新版的是python3开发的03: 配置yum源04:安装系统初始化所需的软件05:安装jumpserver运行所需的依赖环境06:修改系统的字符集,改为是中文的③:安装Python3.601:下载、解压、安装02: 配置python3的环境变量02. 安装运行jumpServer所需的模块由python开发的程序,必须安装该程序使用到的一些模块,才能正确运

2024-01-07 16:42:17 995

原创 jumpServer-01-跳板机与堡垒机

外部用户需要先连接到跳板机,然后再由跳板机进一步连接到内部网络,这种双重连接可以有效地隔离内部网络免受来自外部的攻击和恶意行为。:堡垒机可以集中管理和控制所有的远程访问,减少了对内部网络的直接管理和配置。只有经过身份验证和授权的用户可以通过跳板机访问内部网络,其他未授权的访问将被拒绝。通过跳板机,所有的远程访问都可以被记录和监控,以便进行审计和追踪。:堡垒机可以对远程用户进行身份验证和授权,只有经过验证的用户才能够连接到内部网络。这样可以有效防止未经授权的访问和攻击,保护内部网络的安全。

2024-01-01 13:50:10 957

原创 vue 页面跳转时,浏览器上方显示进度条

1.安装 nprogress。

2023-12-13 15:05:05 624

原创 05_属性描述符

在定义对象、定义属性时,我们曾经介绍过属性描述符,属性描述符实际上就是一个对象。设置一个对象的属性只读不能修改。

2023-11-27 15:40:08 492 2

原创 03_歌词滚动效果

【代码】03_歌词滚动效果。

2023-11-27 14:07:39 697

原创 02_原理-浏览器渲染原理

reflow 的本质就是重新计算 layout 树。当进行了会影响布局树的操作后,需要重新计算布局树,会引发 layout。为了避免连续的多次操作导致布局树反复计算,浏览器会合并这些操作,当 JS 代码全部完成后再进行统一计算。所以,改动属性造成的 reflow 是异步完成的。也同样因为如此,当 JS 获取布局属性时,就可能造成无法获取到最新的布局信息。浏览器在反复权衡下,最终决定获取属性立即 reflow。repaint 的本质就是重新根据分层信息计算了绘制指令。

2023-11-27 09:45:47 841

原创 01_原理-事件循环

每个任务都有一个任务类型,同一个类型的任务必须在一个队列,不同类型的任务可以分属于不同的队列。3.按照W3C的标准,浏览器实现计时器时,如果嵌套层级超过5层,则会带有4毫秒的最少时间,这样在计时时间少于4毫秒时又带来了偏差。2.操作系统的计时函数本身就有少量偏差,由于JS的计时器最终调用的是操作系统的函数,也就携带了这些偏差。根据W3C官方的解释,每个任务有不同的类型,同类型的任务必须在同一个队列,不同的任务可以属于不同的。不同任务队列有不同的优先级,在一次事件循环中,由浏览器自行决定取哪一个队列的任务。

2023-11-24 14:53:54 1167

原创 SpringBoot整合SpringSecurity+jwt+knife4生成api接口(从零开始简单易懂)

③:添加一个测试接口查看效果会自动跳到Springsecurity的登录页面(程序已经被SpringSecurity保护)没有配置用户名和密码时 默认用户user 密码 在控制台02.统一响应类⑤:数据库 数据准备01.yml数据库配置02.添加数据⑥:创建根据用户名获取用户接口如果不配置直接登录会报错意思就是说密码的加密方式为空我们可以写一个测试类 将明文转换为密码 然后将密码存到数据库中在登录过程中 真正

2023-11-24 10:01:38 852

原创 安全框架springSecurity+Jwt+Vue-2(后端开发)

③:开启mapper接口扫描,添加分页、防全表更新插件④:创建数据库和表⑤:结果数据封装⑥:全局异常处理有时候不可避免服务器报错的情况,如果不配置异常处理机制,就会默认返回tomcat或者nginx的5XX页面,对普通用户来说,不太友好,用户也不懂什么情况。这时候需要我们程序员设计返回一个友好简单的格式给前端。处理办法如下:通过使用 @ControllerAdvice 来进行统一异常处理 @ExceptionHandler(value = RuntimeException.class) 来指

2023-11-22 09:28:39 627

原创 SpringBoot整合knife4j生成Api文档

knife4j是为Java MVC框架集成Swagger生成Api文档的增强解决方案,前身是swagger-bootstrap-ui,取名kni4j是希望它能像一把匕首一样小巧,轻量,并且功能强悍!

2023-11-22 09:17:24 309

原创 安全框架springSecurity+Jwt+Vue-1(vue环境搭建、动态路由、动态标签页)

稍等片刻之后,项目就初始化完成了。上面的步骤中,我们创建了一个vue项目,并且安装了Router、Vuex。这样我们后面就可以直接使用。Router: WebApp的链接路径管理系统,简单就是建立起url和页面之间的映射关系Vuex: 一个专为 Vue.js 应用程序开发的状态管理模式,简单来说就是为了方便数据的操作而建立的一个临时” 前端数据库“,用于各个组件间共享和检测数据变化。ok,我们使用IDEA导入项目,看看创建好的项目长啥样子:接下来我们引入element-ui组件(https://elem

2023-11-18 16:02:12 739

原创 CentOS中安装常用环境

你可以在浏览器中访问 http://your_server_ip:15672(替换为你的服务器 IP 地址)并使用默认的用户名和密码(guest/guest)登录。Nginx 的主配置文件是 /etc/nginx/nginx.conf,但通常你会在 /etc/nginx/conf.d/ 目录下创建额外的配置文件。在文件中添加以下内容,替换 your_domain_or_ip 和 /path/to/your/content 为你的实际域名或 IP 地址以及内容的路径。找到 bind 参数,注释掉它。

2023-11-16 14:08:45 719

原创 安全框架SpringSecurity-2(集成thymeleaf&集成验证码&JWT)

一、SpringSecurity 集成thymeleaf①:复制并修改工程复制04_spring_security并重命名为05_spring_security_thymeleaf②:添加配置和依赖添加thymeleaf依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf<

2023-11-13 21:40:52 439

原创 安全框架SpringSecurity-1(认证入门&数据库授权)

一、Spring Security①:什么是Spring SecuritySpring Security是一个能够为基于Spring的企业应用系统提供声明式(注解)的安全访问控制解决方案的安全框架。它提供了一组可以在Spring应用上下文中配置的Bean,充分利用了Spring IoC,DI(控制反转Inversion of Control ,DI:Dependency Injection 依赖注入)和AOP(面向切面编程)功能,为应用系统提供声明式的安全访问控制功能,减少了为企业系统安全控制编写大量重

2023-11-11 17:26:22 440

原创 07-MySQL-进阶-锁&InnoDB引擎&MySQL管理

锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的计算资源(CPU、RAM、I/O)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。从这个角度来说,锁对数据库而言显得尤其重要,也更加复杂全局锁:锁定数据库中的所有表。表级锁:每次操作锁住整张表。行级锁:每次操作锁住对应的行数据。

2023-11-08 09:18:50 90

原创 JUC并发编程(5)(自定义线程池 + 共享模型之工具2)

acquire->->->,如果资源用完了,返回负数,返回负数,表示失败。否则返回正数,返回正数,表示成功。如果成功,获取信号量成功。如果失败,调用,进入for循环:如果当前驱节点为头节点,调用尝试获取锁如果结果大于等于0,表明获取锁成功,调用,将当前节点设为头节点,之后又调用,唤醒后继节点。调用,第一次调用返回false,并将前驱节点改为-1,第二次循环如果再进入此方法,会进入阻塞并检查打断的方法。release->->,只要不发生整数溢出,就返回true如果返回true,调用,唤醒后继节点。

2023-11-08 09:17:21 274

原创 JUC并发编程(4)(自定义线程池 + 共享模型之工具1)

步骤1:自定义拒绝策略接口@FunctionalInterface //拒绝策略步骤2:自定义任务队列//阻塞队列,存放任务//队列的最大容量//锁//生产者条件变量//消费者条件变量//构造方法//超时阻塞获取//将时间转换为纳秒try{try {//等待超时依旧没有获取,返回null//该方法返回的是剩余时间return t;}finally {//阻塞获取try{try {return t;}finally {

2023-11-08 09:16:02 91

原创 JUC并发编程3(共享模型之内存 + 共享模型之无锁 + 共享模型之不可变)

Balking (犹豫)模式用在一个线程发现另一个线程或本线程已经做了某一件相同的事,那么本线程就无需再做 了,直接结束返回Unsafe 对象提供了非常底层的,操作内存、线程的方法,Unsafe 对象不能直接调用,只能通过反射获得。jdk8直接调用获得的unsafe不能用。static {try {//以下三个方法只执行一次,成功返回true,不成功返回false//以下方法都是在以上三个方法的基础上进行封装,会循环直到成功为止。int var5;

2023-11-08 09:15:03 58

原创 JUC并发编程2(共享模型之管程)

要点与前面的保护性暂停中的 GuardObject 不同,不需要产生结果和消费结果的线程一一对应消费队列可以用来平衡生产和消费的线程资源生产者仅负责产生结果数据,不关心数据该如何处理,而消费者专心处理结果数据消息队列是有容量限制的,满时不会再加入数据,空时不会再消耗数据JDK 中各种阻塞队列,采用的就是这种模式。

2023-11-08 09:13:18 85

原创 JUC并发编程1(线程基础 + Java线程)

创建线程的2中方式:继承Thread类;实现Runnable接口启动线程:调用线程的start()方法终止线程:调用线程的stop()方法,方法已过时,建议不要使用线程中断相关的方法:调用线程实例interrupt()方法将中断标志置为true;使用线程实例方法isInterrupted()获取中断标志;调用Thread的静态方法interrupted()获取线程是否被中断,此方法调用之后会清除中断标志(将中断标志置为false了)

2023-11-08 09:11:22 61

原创 SpringBoot + Shiro安全框架 + vue(保姆级从零开始)

Component@Autowired// 自定义授权方法@Override// 自定义登录认证方法@Override// 1.获取用户身份信息// 2. 调用业务层获取用户信息(数据库中)// 判断并将数据完成封装if (!

2023-11-08 09:07:17 100

原创 SpringBoot定时任务打成jar 引入到新的项目中后并自动执行

②:配置yaml(myBatis、数据连接)③:配置类④:创建实体类⑤:测试

2023-11-08 09:06:16 420

原创 Java中使用myBatis根据实体类创建表

②:配置yaml(myBatis、数据连接)③:配置类④:创建实体类⑤:测试

2023-11-08 09:02:57 857 2

原创 Ubuntu中安装rabbitMQ

【代码】Ubuntu中安装rabbitMQ。

2023-11-08 09:01:44 505

原创 SecureCRT双软件安装与使用(保姆级)

百度网盘 下载链接:https://pan.baidu.com/s/1TBkyHgULm6XEj2wo7-76vw?pwd=Coke提取码:Coke。

2023-11-08 09:01:05 1364

Sublime Text3 64bit.zip

Sublime Text是用于代码,html和散文的高级跨平台文本编辑器。为C,C ++,C#,CSS,D,Erlang,HTML,Groovy,Haskell,HTML,Java,JavaScript,LaTeX,Lisp,Lua,Markdown,MATLAB,OCaml,Perl,PHP,Python等语言提供语法高亮显示,R,Ruby,SQL,TCL,Textile和XML. 非常好用

2024-03-15

谷歌浏览器 Chrome107.0.5304.122-chrome64-stable-windows-installer.exe

谷歌浏览器(每天都在使用的浏览器) 官网不好下载 这里提供下载资源 有需要的小伙伴可以直接下载

2024-03-15

Windows 长截屏 FastStone Capture 9.2 Portable.zip

Windows 长截屏 FastStone Capture 9.2 Portable 支持滚动截屏(支持网页滚动、应用内滚动截屏)、全截屏、区域截屏等 超级好用 个人一直在使用

2024-03-15

mysql-8.0.36-macos14-arm64.dmg

mac版 mysql-8.0.36-macos14-arm64 支持最新的M3芯片

2024-03-15

Mac版Redis连接工具 Another-Redis-Desktop-Manager.1.6.2.dmg

Mac版Redis连接工具 Another-Redis-Desktop-Manager 很好用 个人一直在使用 值得推荐

2024-03-15

Mac 卸载软件 App Cleaner

Mac 版本的卸载软件 很好用 卸载软件很干净 很多残留文件都可以卸载掉 我个人一直在用

2024-03-14

03-歌词滚动效果-歌词对应音频

歌词对应音频

2023-11-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除