- 博客(72)
- 收藏
- 关注
原创 git 如何切换到远程分支上
场景: 一般clone项目时,都是默认clone的master分支,但是开发肯定是在各种feature分支上开发,远程仓库上多个featrue分支,我们如何以远程的featrue分支作为起点,新建分支,并且跟踪到这个featrue分支呢?直接使用命令简洁版branch//直接以origin/featrue/a为起点创建本地分支,但不切换工作空间到新分支//--track:建立跟踪,可以省略git branch --track featrue/a origin/featrue/ach
2022-05-29 01:43:57
15725
原创 git:如何上传本地项目到远程仓库
文章目录先回忆下git 几个分区上传项目的前提是:本地Git 全局设置姓名和邮箱:连接第三方仓库gitee或github好的,前提条件结束,我们回到正题,如何上传本地项目到远程仓库?方式一:使用命令创建 git 本地仓库:如果实在idea中,一般已经有文件夹了方式二:使用Idea首先创建一个项目1.初始化本地资源库(git init)2.将工作区文件提交到暂存区(git add)3.commit提交到本地仓库,并push到远程仓库4.观察文件颜色先回忆下git 几个分区1、Workspace:工作区
2022-05-27 02:33:32
2291
原创 git:代码回退restore 、reset、revert
文章目录友好提示看这篇需要对git有一定基础了解!!!一: restore(恢复)git restore [file]git restore --staged [file]二: reset(重置)git reset --hard [commit Id]git reset --soft [commit Id]git reset --mixed(默认) [commit Id]git reset 也支持HEAD三: revert(恢复)git revert [commitId]git revert HEA
2022-05-27 01:46:00
5638
原创 redis和zk分布式锁
文章目录一、redis分布式锁1.实现原理版本一版本二:解决死锁版本三:增加uuid解决其它请求释放锁的问题,增加lua脚本解决删除原子性操作问题版本四:解决锁过期时间不确定的问题版本五:使用redisson客户端,解决上述问题2.怎么保证原子操作3.set命令4.Redis分布式锁的缺点二、zookeeper实现分布式锁1.原理2.优点一、redis分布式锁1.实现原理版本一用Redis的 setnx key value 命令 ,存在则返回0,不存在则添加key,返回1;相当于加锁--方法执行
2022-05-02 20:13:54
767
原创 redis基础
文章目录Redis数据结构持久话配置不生效Redis1. 概念: redis是一款高性能的NOSQL系列的非关系型数据库 1.1.什么是NOSQL NoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。 随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了
2022-05-02 14:26:34
133
原创 linux下安装redis
文章目录1. 下载2. 上传或者直接下载并解压并改名2.1 官方下载,然后上传2.2 通过wget下载3. 安装gcc环境4. 编译与安装5. 为了方便管理,将Redis文件中的conf配置文件和常用命令移动到统一文件中6. 编辑 redis.conf配置文件,设置后台启动redis服务7. 设置Redis开机启动8. 切换到 /usr/local/redis/bin/ 目录下执行 redis-server 命令,使用 /usr/local/redis/etc/redis.conf配置文件来启动redis服
2022-05-02 14:16:42
207
原创 挖矿病毒入侵服务器(没有解决,重置服务器了)
昨天邮件收到一封报告服务器被入侵了.,服务器系统是:CentOS 7.9 64位前排提醒!!!最后水平有限没有解决,重置服务器了😓攻击原理由于服务器Redis服务监听了公网端口未设置访问密码并且其进程启动时使用了root用户,攻击者可远程登录到Redis中,通过Redis内置的命令将自己的公钥写入到/root/.ssh/authorized_keys文件夹下,进而可以直接免密登录到服务器上,并在服务器中植入恶意脚本,实现利用服务器挖矿操作。1.top命令查看cpu占用飙到100%top但
2022-04-28 12:52:29
2799
原创 安装配置seata
文章目录一:安装seata协调者TC服务器服务端TC协调器的配置file.confglobal_tablebranch_tablelock_tableregistry.conf改造微服务,TM,RM配置引入依赖代理数据源添加undo_log表修改配置文件file.confregistry.confSeata版本1.1.0一:安装seata协调者TC服务器官方下载地址 或者wget https://github.com/seata/seata/releases/download/v1.1.0/se
2022-03-28 10:28:49
1235
原创 如何实现mysql主从复制
基于Mysql版本5.7一:一主一从0.赋予用户权限只有复制权限grant replication slave on *.* to '用户名'@'可以复制的ip(不填就是所有).%' identified by '密码'通用权限grant all on *.* to 'root'@'%' identified by '12345678'刷新权限flush privileges1.主节点开启binlog日志1.1修改my.cnf配置文件#节点的唯一Idserver-id=1#b
2022-03-07 17:22:59
929
2
原创 mysql的全量备份和增量备份
全量备份1 创建mysqldump脚本mysqldump参数1. 全备数据库(innodb Engine)mysqldump -uroot -pmysql123 --single-transaction --master-data=2 --flush-logs --flush-privileges --routines --events --all-databases > /backup/db_bak01.sql2. 全备(Myisam Engine)mysqldump -uroot -
2022-03-07 17:01:54
6367
2
原创 mysql之binlog日志
binlog日志(binary log)1.开启mysql的binlog日志1.1 查看binlog是否开启mysql> show variables like '%log_bin%';+---------------------------------+-------+| Variable_name | Value |+---------------------------------+-------+| log_bin
2022-03-07 16:54:17
3307
原创 Base64是什么?
Base64是什么?Base64是一种二进制到文本的编码方式。如果要更具体一点的话,可以认为它是一种将 byte数组编码为字符串的方法,而且编码出的字符串只包含ASCII基础字符。例如字符串ShuSheng007对应的Base64为U2h1U2hlbmcwMDc=。其中那个=比较特殊,是填充符,一会再说。值得注意的是Base64不是加密算法,其仅仅是一种编码方式,算法也是公开的,所以不能依赖它进行加密。为什么叫Base64?因为它是基于(Base)64个字符的一种编码方式。使用其编码后的文本只包含
2022-02-11 23:46:00
9992
3
原创 Java泛型学习
为什么要用泛型Java语言引入泛型的好处是安全简单。泛型的好处是在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重用率为什么说Java泛型是假泛型,因为泛型不过是在编译器生效,带泛型的最后还是转换成Object类型,JVM帮我们进行了类型转换泛型的声明泛型类:public class Test<T>}{} T表示未知类型泛型接口:public interface Test<T>{} 和定义类一样泛型方法:public <T> void
2022-02-09 16:29:16
384
原创 Stream学习笔记
Stream入门Stream 不是集合 , 也不是数据结构 , 不可以保存数据Stream 有点类似于高级 的 Iterator , 可以用于算法和计算不同于迭代器 , Stream 可以并行化操作 , 数据被分为很多段 , 在不同的线程中进行处理数据源、零个或多个中间操作 ( intermediate ) 以及零个或一个终端操作 (terminal )所有中间操作都是惰性的 , 在管道开始工作之前,任何操作都不会产生任何效果终端操作有点像水龙头 , 开启了水龙头后 ,
2022-01-25 09:52:31
500
原创 排序之Comparable和Comparator
Comparable<T>和 Comparator<T>这俩接口经常被使用,这里介绍下这俩是什么以及怎么用Comparable<T>和Comparator<T>一般都是用来排序对象的,Comparable<T>是内部比较器,Comparator<T>是外部比较器,直接上代码看例子1.Comparable<T>Comparable<T>内部比较器,故那个类需要排序自己就实现这个借口使用方式1.如果我们
2022-01-23 05:00:24
743
原创 Jdk8之函数式接口&Lambda表达式&方法引用
1.函数式接口函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。注解@FunctionalInterface可以检测接口是否是一个函数式接口。(在合作开发中,避免同事修改此接口造成错误)2.Lambda 表达式的语法基本形式:Lambda 表达式由三部分组成:参数、->符号、方法体(参数列表)->{方法体}如:// 2个int型整数,返回和值 (int x, int y) -> {x + y}//
2022-01-18 16:48:22
435
原创 @ControllerAdvice 的介绍及三种用法
学习下@ControllerAdvice首先,@ControllerAdvice本质上是一个@Component,因此也会被当成组建扫描。加了@ControllerAdvice的类为那些声明了(@ExceptionHandler、@InitBinder 或 @ModelAttribute注解修饰的)方法的类而提供的专业化的@Component , 以供多个 Controller类所共享。说白了,就是aop思想的一种实现,你告诉我需要拦截规则,我帮你把他们拦下来,具体你想做更细致的拦截筛选和拦截
2022-01-13 01:04:38
7028
原创 spring循环依赖
1.循环依赖有哪几种1.单例的setter注入(属性注入)spring通过三级缓存解决:singletonObjects 一级缓存,用于保存实例化、注入、初始化完成的bean实例earlySingletonObjects 二级缓存,用于保存实例化完成的bean实例singletonFactories 三级缓存,用于保存bean创建工厂,以便于后面扩展有机会创建代理对象。下面用一张图告诉你,spring是如何解决循环依赖的:2.多例的setter注入(属性注入)解决不了,改成单例3.构
2022-01-10 18:04:18
435
原创 spring的依赖注入
spring自动注入的方式xml方式手动:set方法注入<bean name ="orderService" class ="com.zzy.service.OrderService"> </bean><bean name ="userService" class ="com.zzy.service.UserService"> <property name="orderService" ref= "orderService
2022-01-08 15:19:38
157
原创 Maven
Maven安装maven,配置环境变量,配置maven的settings.xml(本地仓库地址,远程镜像地址,nexus私服地址),idea的maven配置暂时不讲这里只来记录下本人使用maven的pom.xml的配置及常用标签当我们选择maven构建spring boot的项目,会自动生成一个pom.xml文件pom.xml 就是 maven 的配置文件,用以描述项目的各种信息。常用标签1.project - project 是 pom.xml 中描述符的根标签。<project
2022-01-06 17:22:11
281
原创 @ComponentScan
Srping注解 @ComponentScan1.创建一个配置类,在配置类上添加 @ComponentScan 注解。该注解默认会扫描该类所在的包下所有的配置类,相当于之前的 <context:component-scan>。2.使用 ApplicationContext 的 getBeanDefinitionNames() 方法和getBeanDefinitionCount()获取已经注册到容器中的 bean 的名称以及数量@SpringBootApplicationpublic
2021-12-30 17:50:23
420
原创 常见的Java日志 pom版
<!--常用 slf4j适配器 ,适配器中自带具体实现 只能适配一个!!!!!!--> <!--适配log4j --> <dependency> <artifactId>slf4j-log4j12</artifactId> <groupId>org.slf4j</groupId> <version>1.7.
2021-12-23 17:37:17
663
原创 权重测试,线性随机算法
先创建个奖励对象@Data@AllArgsConstructor@NoArgsConstructor@Builderpublic class NewSysBoxInfo { @ApiModelProperty("奖励Id") private Integer id; @ApiModelProperty("权重") private Integer percentage; @ApiModelProperty("奖励的上限数量") private Integ
2021-11-29 18:05:49
355
原创 SpringBoot整合swagger2
Spring Boot版本:2.4.51.引入依赖<!--swaggerApi--><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version></dependency><!--swagger官方u
2021-11-29 15:08:40
511
1
原创 Integer学习
/** * @author zzy * @createDate: 2021-11-29 10:24:15 * @description: 源码都比较简单,自己点进去看吧 */public class Integer学习 { public static void main(String[] args) { //一:四种创建 Integer的方法,前三种值在 -128 ~ 127 之间缓存这个值 //1.String转int, 然后自动装箱所以有缓存,第二个参数
2021-11-29 11:50:51
60
原创 前端和数据库时间差8小时?
springBoot版本:2.4.5Mysql版本:5.7.28原因一:数据库配置spring: datasource: url: jdbc:mysql://localhost:3306/zzytest?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&useAffectedRows=true
2021-11-10 18:29:29
2845
原创 spring boot 注解 实现Interceptor
本文主要介绍拦截器(Interceptor)spring boot 版本 : 2.4.5实现方式有 :AsyncHandlerInterceptor或HandlerInterceptorspring 5.3 HandlerInterceptorAdapter 已弃用一:定义拦截器@Component@Slf4j//统计方法执行时间public class TimeInterceptor implements HandlerInterceptor { @Override.
2021-10-08 18:05:23
437
原创 spring boot 注解 实现Filter
本文主要介绍过滤器(Filter)spring boot 版本 : 2.4.5一:注册过滤器SpringBootApplication 上使用@ServletComponentScan 注解后Servlet可以直接通过@WebServlet注解自动注册Filter可以直接通过@WebFilter注解自动注册Listener可以直接通过@WebListener 注解自动注册二:定义过滤器@WebFilter(filterName = "MyFilter1", urlPatterns = .
2021-10-08 15:25:07
649
原创 windows端口占用
windows端口占用问题ctrl+R -> 输入 cmd输入命令,查询端口8222的情况netstat -aon|findstr "8222"11480是该进程的PID结束进程方式一命令 :其中11480是PIDtaskkill /T /F /PID 11480方式二任务管理器中找到进程->把PID放出来->通过PID找到对应的进程,右键结束进程如果看不到PID,右键名称或者状态那一栏,把PID放出来...
2021-08-25 10:19:43
178
原创 mybatis
一:mapper接口生成代理类1.配置类上加@MapperScan(basePackages = {"com.zzy.mapper"})2.mapper接口上加@Mapper二:mapper Xml找不到?1.直接在mapper方法上用注解 @Delete("delete from cmall.logistics_info where id = #{id}") int deleteById(Integer id);**2.配置文件#mybtis的,功能比较少mybatis:
2021-08-24 02:46:46
294
原创 mysql记录sql
记录下写过的sql1. 计算用户访问UV(人数),user_id去重SELECT count( DISTINCT user_id ) AS total FROM ar_scenic.langzhong_user_get_prize_logs 2. 计算用户访问UV(人次)SELECT count( user_id ) AS total FROM ar_scenic.langzhong_user_get_prize_logs 3. 时间相关得到当前时间SELECT NOW(
2021-08-19 16:09:40
118
原创 springboot jar包和war包发布
springboot jar包和war包发布打包过程可以看idea中将springboot项目打成jar包或者war包一:jar包方式1.查看PIDps -ef|grep *.jar 出现了两条73147指的是ps -ef|grep *.jar 这条命令的进程,所以每次查都会变,如果不想看见可以使用:2.杀死进程kill 458003.启动jar1 前台启动,锁定ssh窗口,CTRL+C 退出java -jar admin.jar2 后台启动,不锁定ssh窗口,C
2021-08-17 10:29:05
101
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人