自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 基于Redis实现全局ID生成器

Java中的long占8个字节,也就是64位。我们将这64位分为两个部分,前32位存储时间戳,后32位存储序号。实现细节`timestamp

2022-11-27 16:47:26 574 1

原创 基于Redis实现滑动窗口限流

滑动窗口是否校验连续请求的最小间隔时间失败请求是否加入窗口

2022-11-27 16:22:45 2026 2

原创 vue页面拖拽排序

组件官网http://www.sortablejs.com添加依赖npm install sortablejs --save页面使用template <ul style="margin-right: 40px;" ref="blogUl"> <li @click="liClick(item.id)" :data-id="item.id" style="list-style-type:none;" v-for="item in list" :key="item.id"&g

2021-09-15 18:40:54 358

原创 MakeDown格式的处理(vue前端编辑与展示,微信小程序展示,SpringBoot后端获取摘要)

Vue端处理组件官网http://www.mavoneditor.com安装依赖npm install mavon-editor --savemain.js添加引用import mavonEditor from 'mavon-editor'import 'mavon-editor/dist/css/index.css'// useVue.use(mavonEditor)编辑页面使用template <mavon-editor ref="md" :t

2021-09-15 18:19:50 414

原创 SpringBoot发送邮件(网易邮箱,QQ邮箱,139邮箱)

添加依赖<!-- 邮件服务 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifactId></dependency><dependency> <groupId>org.springframework.boot

2021-09-15 13:06:49 2321 6

原创 密码的前端加密与后端解密

前端加密之vue加密安装依赖npm install jsencrypt公钥加密密码import JSEncrypt from 'jsencrypt/bin/jsencrypt.min'// 密钥对生成 http://web.chacuo.net/netrsakeypairconst publicKey = 'MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAMNRhRdV7BI4MN5buB2Dyj6+dSOEpa6jCiJETtBtwfTuWlerqzdgxvFJHKLr

2021-09-14 19:30:44 1132

原创 Linux环境下编写脚本重启SpringBoot项目

编写脚本#!/bin/bash# jar包地址 这里脚本就在jar包所在的文件夹内PROJECT_PATH=fgrapp-admin.jar# 日志输出地址LOG_PATH=fgrapp-admin.logPID=$(ps -ef | grep $PROJECT_PATH | grep -v grep | awk '{ print $2 }')if [ -z "$PID" ]then echo Application is already stoppedelse echo

2021-09-14 12:31:45 272

原创 SpringBoot整合MyBatis-Plus进阶(自动填充,SQL注入)

SSpringBoot整合MyBatis-Plus进阶前期准备1.自动填充1.1 实体类修改1.2 自定义填充实现类1.3 测试2.SQL注入2.1 定义方法2.2 添加方法2.3 添加配置2.4 dao层添加方法2.5 service层添加方法2.6 controller层添加方法2.7 测试前期准备首先完成MyBatis-Plus基础整合。可以参考上一篇文章SpringBoot整合MyBatis-Plus1.自动填充1.1 实体类修改需要自动填充的字段添加属性@Data@TableName

2021-09-06 19:03:42 1123 1

原创 SpringBoot配置统一返回格式与统一异常处理

SpringBoot配置统一返回格式与统一异常处理前期准备定义返回格式与返回状态码返回状态码统一返回格式标识需要统一返回结果的注解自定义异常类配置类业务类实体类控制器返回结果项目源码前期准备首先创建一个web项目,并整合lombok。可以参考之前的文章SpringBoot快速构建web项目-多模块项目定义返回格式与返回状态码返回状态码@ToString@Getterpublic enum ResultStatus { SUCCESS(HttpStatus.OK, 200, "OK")

2020-12-08 15:53:38 667

原创 SpringBoot添加统一日志记录-Aspect方式

SpringBoot添加统一日志记录前期准备添加依赖业务类实体类控制器配置类显示结果项目源码前期准备首先创建一个web项目,并整合lombok。可以参考之前的文章SpringBoot快速构建web项目-多模块项目添加依赖<!--引用AOP--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-ao

2020-12-08 15:23:23 421

原创 SpringBoot添加跨域配置

SpringBoot添加跨域配置前期准备配置类项目源码前期准备首先创建一个web项目,并整合lombok。可以参考之前的文章SpringBoot快速构建web项目-多模块项目配置类@Configurationpublic class CrossConfig { @Bean public CorsFilter corsFilter() { UrlBasedCorsConfigurationSource source = new UrlBasedCorsConfigur

2020-12-07 19:43:58 554

原创 SpringBoot整合swagger并修改默认UI

SpringBoot整合swagger前期准备1.添加依赖2.添加配置类3.使用3.1 实体类3.2 控制类4.访问5.使用的注解前期准备首先创建一个web项目,并整合lombok。可以参考之前的文章SpringBoot快速构建web项目-多模块项目1.添加依赖<!-- swagger2 --><dependency> <groupId>io.springfox</groupId> <artifac

2020-12-07 19:34:38 1198

原创 SpringBoot整合MyBatis-Plus(基础整合、SQL执行分析、分页插件)

SpringBoot整合MyBatis-Plus前期准备1.基础整合1.1添加依赖1.2改yml1.3添加配置类1.4 编写业务类1.4.1 建表语句1.4.2 实体类1.4.3 dao1.4.4 service1.4.5 controller1.5 测试2.整合 执行 SQL 分析打印2.1 添加pom依赖2.2 修改yml配置2.3 添加spy.properties3 整合分页插件3.1 修改配置类MybatisPlusConfig3.2 添加工具类PageUtil3.3 添加mapper文件Sales

2020-12-07 17:29:37 789

原创 SpringBoot快速构建web项目(多模块项目)

SpringBoot快速构建web项目-多模块项目1.创建项目:learn-springboot-plus2.改pom文件3.创建模块:springboot-start4.添加依赖5.添加配置文件application.yml6.添加主启动类StartMain7.添加测试接口类8.测试接口9.项目源码1.创建项目:learn-springboot-plus选择maven项目,自己添加依赖,这样不会构建出多余文件2.改pom文件 <!--表示这是一个父级项目--><packagin

2020-12-07 16:19:09 696

原创 SpringBoot2.0之配置文件

使用到的注解@EnableAutoConfiguration@ConfigurationProperties(prefix = “person”)@ProipertySource(value = {“classpath:person.properties”})@Validated@Email使用到的属性spring.profiles.activespring.profi...

2019-12-21 18:40:13 485

原创 【每日一题】JVM篇-回收算法

判断对象是否存活的算法引用计数算法:给对象添加一个引用计数器,每当有一个地方引用它时,计数器加1;当引用失效时,计数器就减1;任何时刻计数器都为0的对象就是不可能再被使用的。它很难解决对象之间相互循环引用的问题根搜索算法:通过一系列的名为GC Roots的对象作为起点,从这些节点开始向下搜索,搜索所走过的路径称为引用链,当一个对象到GC Roots没有任何引用链相连时,则证明此对象是不可用的...

2019-12-12 09:04:57 171

原创 【每日一题】JVM篇-类的实例化顺序

类的声明周期加载、验证、准备、解析、初始化、使用、卸载初始化的时机遇到new、getstatic、putstatic、invokestatic这4条字节码指令时,如果类没有进行过初始化,则需要先触发其初始化。生成这4条指令的最常见的代码场景是:使用new关键字实例化对象的时候、读取或设置一个类的静态字段(被final修饰、已在编译器把结果放入常量池的静态字段除外)的时候、调用一个类的静态方...

2019-12-11 09:22:17 192

原创 【每日一题】JVM篇-类加载为什么要使用双亲委派模式,有没有什么场景是打破了这个模式

类加载器站在Java虚拟机的角度讲,只存在两种不同的类加载器:一种是启动类加载器,这个类加载器使用C++语言实现,是虚拟机自身的一部分:另外一种就是所有其他的类加载器,这些类加载器都由Java语言实现,独立于虚拟机外部,并且全都继承自抽象类java.lang.ClassLoader。从Java开发人员的角度来看,类加载器就还可以划分的更细致一些,绝大部分Java程序都会使用到以下三种系统提供的...

2019-12-10 09:34:32 2390 1

原创 【每日一题】JVM篇-年轻代到年老代的晋升过程的判断条件是什么呢

长期存活的对象进入老年代虚拟机给每个对象定义了一个对象年龄计数器。如果对象在Eden出生并经过第一次MinorGC后仍然存活,并且能被Survivor容纳的话,将被移动到Survivor空间,并将对象年龄设为1.对象在Survivor区每熬过一次MinorGC年龄就加一岁,当它的年龄增加到一定程度(默认为15岁)时,就会晋升到老年代中,对象晋升老年代的年龄阈值,可以通过参数-XX:MaxTen...

2019-12-09 09:28:47 1487

原创 【每日一题】JVM篇-什么情况下会出现内存溢出,内存泄漏

内存泄漏memory leak :是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄漏似乎不会有大的影响,但内存泄漏堆积后的后果就是内存溢出。Java内存泄漏的根本原因是什么呢?长生命周期的对象持有短生命周期对象的引用就很可能发生内存泄漏,尽管短生命周期对象已经不再需要,但是因为长生命周期持有它的引用而导致不能被回收,这就是Java中内存泄漏的发生场景。具体主要有如下几大类:静态集合...

2019-12-07 09:19:26 1048

原创 【每日一题】JVM篇-详解JVM内存模型

PC计数器:作用是当前线程所执行字节码的行号指示器内容是正在执行的虚拟机字节码指令的地址,如果是Natvie方法,则内容为空。意义是在线程切换后恢复到正确的执行位置虚拟机栈:描述的是Java方法执行的内存模型,方法被执行的时候会同时创建一个栈帧,存放的内容是局部变量表、操作栈、动态链接以及方法出口等。一个方法从被调用到执行结束对应的是一个栈帧从入栈到出栈的过程局部变量表的内容是基本数...

2019-12-06 10:08:18 312

原创 SSM项目中Filter使用@Autowired注入bean

问题引入今天项目中要统计在线人数与接口访问统计功能,于是准备在以前验证是否登录的filter中添加相关的统计功能,所以要在自定义的filer中注入redis操作类。起先按照正常操作,使用@Autowired注入操作类,然后。。。就没有然后了。问题分析出现问题的原因是因为Web容器的初始化过程为Listener -> Filter -> Servlet,所以在Filter初始化...

2019-10-14 16:33:42 687 2

原创 CentOS 7安装MySQL图形管理工具workbench

下载地址https://dev.mysql.com/downloads/workbench/开始安装[root@fgr 下载]# ll总用量 1268484-rw-rw-r--. 1 fgr fgr 9699102 5月 17 18:20 apache-tomcat-8.5.41.tar.gz-rw-rw-r--. 1 fgr fgr 58409570 5月 17 17:50...

2019-05-22 12:46:17 5655

原创 MySQL之LeetCode-626(换座位)

题目(中等)小美是一所中学的信息科技老师,她有一张 seat 座位表,平时用来储存学生名字和与他们相对应的座位 id。其中纵列的 id 是连续递增的小美想改变相邻俩学生的座位。你能不能帮她写一个 SQL query 来输出小美想要的结果呢?示例:±--------±--------+| id | student |±--------±--------+| 1 ...

2019-05-20 13:42:45 504

原创 MySQL之LeetCode-627(交换工资)

题目(简单)给定一个 salary 表,如下所示,有 m = 男性 和 f = 女性 的值。交换所有的 f 和 m 值(例如,将所有 f 值更改为 m,反之亦然)。要求只使用一个更新(Update)语句,并且没有中间的临时表。注意,您必只能写一个 Update 语句,请不要编写任何 Select 语句。例如:idnamesexsalary1Am25002...

2019-05-20 12:52:53 168

原创 CentOS 7 安装Xmind8

下载安装包https://www.xmind.cn/xmind8-pro/创建安装目录r@fgr 下载]$ sudo mkdir -p /usr/local/xmind[sudo] 的密码:[fgr@fgr 下载]$ su密码:解压xmind安装包[root@fgr 下载]# unzip xmind-8-update8-linux.zip -d /usr/local/xmind...

2019-05-20 00:06:36 780

原创 笔记本双系统环境下,CentOS 7 访问 Windows10 文件

环境介绍笔记本在加了一个256G的固态后,在固态上安装了Win10,就把平时用来放资料的机械硬盘清理了一下,安装了CentOS 7。用了一段时间后发现,在CentOS 7 中虽然检测到了Win10所在的硬盘,却访问不了其中的文件。上网搜索以后发现需要安装ntfs-3g。下面就开始安装。准备工作添加常用源。可以参考我的上一篇博客(CentOS 7添加EPEL源和RPMforge源)。已安装的...

2019-05-19 14:30:30 692

原创 CentOS 7添加EPEL源和RPMforge源

确定系统架构及版本[root@fgr conf]# cat /etc/redhat-releaseCentOS Linux release 7.6.1810 (Core) [root@fgr conf]# uname -r3.10.0-957.12.2.el7.x86_64[root@fgr conf]# uname -aLinux fgr.first 3.10.0-957.12.2....

2019-05-19 14:13:07 3174

原创 CentOS 7下IDEA配置tomcat报错application server libraries not found

问题描述在CentOS7下的IDEA中配置tomcat时选择tomcat所在的文件夹后,显示检测不到tomcat,点击确定,报错:application server libraries not found解决方法网上说是权限问题,于是打开终端,切换到root用户,执行:chmod -R 777 tomcat8# 这里面的tomcat8为我的tomcat所在的文件夹名称完美解决了问题...

2019-05-19 11:55:26 908

原创 MySQL之LeetCode-620(有趣的电影)

题目(简单)某城市开了一家新的电影院,吸引了很多人过来看电影。该电影院特别注意用户体验,专门有个 LED显示板做电影推荐,上面公布着影评和相关电影描述。作为该电影院的信息部主管,您需要编写一个 SQL查询,找出所有影片描述为非 boring (不无聊) 的并且 id 为奇数 的影片,结果请按等级 rating 排列。例如,下表 cinema:±--------±----------±---...

2019-05-17 13:59:58 317

原创 MySQL之LeetCode-596(超过5名学生的课)

题目(简单)有一个courses 表 ,有: student (学生) 和 class (课程)。请列出所有超过或等于5名学生的课。例如,表:±--------±-----------+| student | class |±--------±-----------+| A | Math || B | English || C ...

2019-05-17 13:44:35 250

原创 MySQL之LeetCode-595(大的国家)

题目(简单)这里有张 World 表±----------------±-----------±-----------±-------------±--------------+| name | continent | area | population | gdp |±----------------±-----------±-...

2019-05-17 13:32:15 162

原创 MySQL之LeetCode-197(上升的温度)

题目给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。±--------±-----------------±-----------------+| Id(INT) | RecordDate(DATE) | Temperature(INT) |±--------±-----------------±---------------...

2019-05-17 13:21:01 236

原创 MySQL之LeetCode-196(删除重复的电子邮箱)

题目(简单)编写一个 SQL 查询,来删除 Person 表中所有重复的电子邮箱,重复的邮箱里只保留 Id 最小 的那个。±—±-----------------+| Id | Email |±—±-----------------+| 1 | john@example.com || 2 | bob@example.com || 3 | john@exa...

2019-05-17 13:03:09 460

原创 windows 10 使用VMware Workstation Pro 15.0.0虚拟机 安装MacOS系统

下载地址链接:https://pan.baidu.com/s/1nn1vTtA2QwApelq762vqdQ提取码:bj3yVMware的安装可以参考:windows 10 安装VMware Workstation Pro 15.0.0开始安装创建新的虚拟机选择典型配置:选择镜像文件这里选择的时候要先设置一下文件格式为所有文件,因为我们下载的不是iso格式的文件。选择操...

2019-05-17 09:25:33 2045

原创 MySQL之LeetCode-184(部门工资最高的员工)

题目(中等)Employee 表包含所有员工信息,每个员工有其对应的 Id, salary 和 department Id。±—±------±-------±-------------+| Id | Name | Salary | DepartmentId |±—±------±-------±-------------+| 1 | Joe | 70000 | 1 ...

2019-05-16 13:41:59 241

原创 MySQL之LeetCode-183(从不订购的客户)

题目(简单)某网站包含两个表,Customers 表和 Orders 表。编写一个 SQL 查询,找出所有从不订购任何东西的客户。Customers 表:±—±------+| Id | Name |±—±------+| 1 | Joe || 2 | Henry || 3 | Sam || 4 | Max |±—±------+Orders 表:±—...

2019-05-15 23:58:48 132

原创 MySQL之LeetCode-182(查找重复的电子邮箱)

题目(简单)编写一个 SQL 查询,查找 Person 表中所有重复的电子邮箱。示例:±—±--------+| Id | Email |±—±--------+| 1 | a@b.com || 2 | c@d.com || 3 | a@b.com |±—±--------+根据以上输入,你的查询应返回以下结果:±--------+| Email |±---...

2019-05-15 23:08:39 271

原创 MySQL之LeetCode-181(超过经理收入的员工)

题目(简单)Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。±—±------±-------±----------+| Id | Name | Salary | ManagerId |±—±------±-------±----------+| 1 | Joe | 70000 | 3 || ...

2019-05-15 22:39:38 192

原创 MySQL之LeetCode-180(连续出现的数字)

题目编写一个 SQL 查询,查找所有至少连续出现三次的数字。±—±----+| Id | Num |±—±----+| 1 | 1 || 2 | 1 || 3 | 1 || 4 | 2 || 5 | 1 || 6 | 2 || 7 | 2 |±—±----+例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。±-...

2019-05-15 22:27:49 251

空空如也

空空如也

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

TA关注的人

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