自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

沐雨金鳞

Welcome!

  • 博客(595)
  • 资源 (20)
  • 收藏
  • 关注

原创 单点登陆sso实现(基于全局session实现)

本篇博客实现借鉴自:大厂架构演进实战之手写 CAS 单点登录如果不想按下面的步骤一个一个粘贴,我也提供了github地址:https://github.com/XuBaozhao/sso一、实现目标:登陆淘宝,跳转登陆页面,登陆后,进入淘宝主页,再次登陆天猫,发现不用登陆,直接进入了天猫主页。我省略了和数据库打交道的一点,并且也省略了验证token相同的环节,因为只是简单的熟悉流程,细节问题并不考虑在内。看下面的结果展示,你就明白了。(1)taobao 首先访问,被拦截,检测到没有

2020-09-18 14:28:07 1306 4

原创 对深度学习目前以及未来的看法 (AI时代可能延后,但总会到来)

下面的观点仅代表个人看法,没有收到任何外在观点的浸染,只是自己躺在椅子上,望着蓝蓝的天空,脑子里突然蹦出来的想法。个人认为:深度学习目前处于一个突破性的临界点的状态,很像是60年代左右出现的数据库的状态,当然如果相比于数据库,数据库系统发展经历了人工、文件、然后才到了目前的数据库系统的阶段,深度学习呢,神似数据库的发展,数据库是如何发展起来的呢,对数据量的要求,对存储结构的要求,然后经过...

2020-04-08 16:43:04 1389 2

原创 语义分割代码实现流程

语义分割的整体实现代码大致思路很简单,但是具体到细节,就有很多可说的东西。之前写过一篇文章,可能有些地方现在又有了新的思路或者感受,或者说之前没有突出重点。作为一个小白,这里把自己知道的知识写一下,事无巨细,希望看到的人能有所收获。一、文件思路总的来说,语义分割代码可以分为如下几个部分:data:图像数据 data/train:训练集数据 data/train/img:...

2019-11-23 18:59:27 11304 8

转载 ElasticSearch简介

摘自Elasticsearch-基础介绍及索引原理分析Elasticsearch 是一个分布式可扩展的实时搜索和分析引擎,一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎.当然 Elasticsearch 并不仅仅是 Lucene 那么简单,它不仅包括了全文搜索功能,还可以进行以下工作:分布式实时文件存储,并将每一个字段都编入索引,使其可以被搜索。 实时分析的...

2019-05-18 08:51:31 116429 30

原创 Git开发常用命令

Git开发常用命令

2022-06-15 18:24:05 441

原创 面向对象设计 - 抽象

最近在修改毕业论文,老师提了意见,说:p.89“本文设计的采集系统结合了面向对象的设计思想,每种采集方式都以实例的形式抽象了出来,系统能够通过对实例的管理实现对整体采集流程的管理。”这段话如何讲,没看到你的设计是如何抽象的?!在平时的软件开发过程中,将抽象的思想融入系统设计已经成为了习惯,因此,当老师提出这个问题的时候,我困惑了,就像你每天都会看到太阳从东边升起,但是有人问你为什么太阳从东边升起,你却无法回应他…因此,为了使论文的质量进一步提高,便对抽象的概念进行了深入学习。创造性:1、知识

2022-05-17 11:52:10 440

原创 canal在执行不同类型的sql语句时的rowData返回情况

Drop table test;create table test(name varchar(20), age int);可以看到,当我们使用drop和create语句时,我们通过rowChange.getSql()可以直接获得其sql语句!insert into test(name, age) values("123", 123);UPDATE test SET age = 1 where name = "123";DELETE FROM test WHERE na..

2021-04-15 14:49:18 1300

原创 mybatis动态标签拼接sql提高插入速度

实验室的项目,Excel文件的数据入库,原始录入语句如下:void insertCaculatePlanData(@Param("excelName") String excelName, @Param("CaculatePlanColumnName") List<String>CaculatePlanColumnName, @Param("InsertIntoCaculatePlanDat

2021-04-09 16:43:53 798

原创 多线程使用MultipartFile上传excel文件报错

实验室项目中有一个文件上传的功能,因为之前我使用的new Thread来做的,线程不好管理,所以我改用了ThreadPoolExecutor来做,没想到出现了如下问题:原因:然后我从网上看了很多方式,无非这么几种解决方案:1、修改配置,指定临时文件存储路径 2、 修改multipart的最大文件大小,当文件数大于该值时,就不会有临时文件产生上面两种方法对我均无效!最终的解决方案是:InputStream is = file.getInputStream();...

2021-02-18 20:39:24 1868

原创 并查集解决1584连接所有点的最小费用

import java.util.*;class Solution{ private class UnionFind{ // 节点的祖先节点 private int []parent; // 初始化,自己是自己的祖先 public UnionFind(int n){ this.parent = new int[n]; for(int i=0; i<n; i++)...

2021-01-19 10:57:58 365

原创 并查集解决721账户合并

解决方法:因为要使用并查集,所以要建立每个邮箱的地址:<邮箱, 索引> 建立并查集 插入数据,对每个人下面的邮箱,和第一个邮箱做合并 建立root地址对应邮箱同属一个人的集合:<root, List> 组合结果代码量比较多:import java.util.*;class Solution { private class UnionFind{ // 节点的祖先节点 private int []paren..

2021-01-18 21:01:33 283

原创 指针法解决5243同积元组

第一次做:用的DFS ,超时了????class Solution { int res = 0; public void dfs(int[]nums, int n, int j1, int j2, boolean sign[]){ if(j1 != 0 && j1 == j2 && n == 4){ res+=1; return; }

2021-01-17 14:38:52 352

原创 并查集解决803打砖块

看到这道题我的思路:把二维数组转成一维 把相邻的索引对记录下来 遍历敲打的数组: 如果敲打的地方没砖头,直接continue 如果有砖头: 把对应索引置0,删除该索引的相邻索引对 把剩下的相邻的索引对建立并查集 建立map数组,查看每个砖头可达的集合中是否包含与屋顶相连的索引,可达说明砖头没掉,不可达说明砖头掉了,集合中的全部都不可达屋顶,全部掉落 我的思路代码如下,结果可想而知.....import java.util.*;class Solutio

2021-01-16 20:13:45 327

原创 ArrayList和LinkedList遍历的时间对比

先放结论:ArrayList遍历最大的优势在于内存的连续性,CPU的内部缓存结构会缓存连续的内存片段,可以大幅降低读取内存的性能开销。Iterator遍历:100万数据:ArrayList程序运行时间: 5ms LinkedList程序运行时间: 11msimport java.util.*;class Test { public static void main(String[] args) { ArrayList<Integer> a.

2021-01-16 14:05:56 582

原创 线段树数组实现解决307区域和检索

线段树数组实现的逻辑比较复杂......借此记录一下吧????详见https://leetcode-cn.com/problems/range-sum-query-mutable/solution/xian-duan-shu-zu-shou-hui-tu-xiang-yi-qing-er-chu-/class NumArray { int[] tree; int n; public NumArray(int[] nums) { n = nums.le

2021-01-14 09:27:06 193

原创 Linux 文件系统

一、Linux文件系统简介在Linux操作系统中,所有被操作系统管理的资源,例如网络接口卡、磁盘驱动器、打印机、输入输出设备、普通文件或是目录都被看作是一个文件。也就是说在LINUX系统中有一个重要的概念:一切都是文件。其实这是UNIX哲学的一个体现,而Linux是重写UNIX而来,所以这个概念也就传承了下来。在UNIX系统中,把一切资源都看作是文件,包括硬件设备。UNIX系统把每个硬件都看成是一个文件,通常称为设备文件,这样用户就可以用读写文件的方式实现对硬件的访问。二、文件类型与目录结.

2021-01-13 21:54:57 321

原创 线段树解决729我的日程安排表I

这个题主要是学习线段树的使用:class MyCalendar { // 线段树的根 private SegmentTreeNode root; /** * 线段树结构体 */ private static class SegmentTreeNode { int start;// 时间开始区间 int end;// 时间结束区间 SegmentTreeNode left;// 区间左.

2021-01-13 11:55:50 275

原创 并查集求婴儿名字

学过之前的并查集后,发现就很简单了,简单的改造一下并查集,并且按照并查集的三步走策略,就做出来了:class Solution { private class UnionFind{ Map<String, String> parent = new HashMap<>(); public UnionFind(int n, String[] names){ for(int i=0; i<n;

2021-01-12 10:58:33 422

原创 1722-并查集求执行交换操作后的最小汉明距离

并查集操作一般步骤: 并查集模版套上 构建映射关系<root节点,集合> 执行相关操作,得到题目结果 看到题目后,首先我的做法是:将allowedSwaps分成可以互相交换的集合,比如[[0,1],[2,3]],分成两个集合[0,1]和[2,3] 对每个集合对应的下表排序,因为一个集合中的下标是可以随便排列的,souce=[1,2,3,4]每个集合子集排序后是[1,2,3,4],target每个子集排序后是[1,2,4,5] 然后比较每个位置不同数字..

2021-01-12 10:58:20 280

原创 两、三、四数之和

两次遍历就不写了,这里写双指针做法:class Data implements Comparable{ int num; int index; Data(int num, int index){ this.num = num; this.index = index; } @Override public int compareTo(Object o) { if(this.num < ((Da...

2021-01-11 21:16:30 232

原创 两个栈实现队列

写这道题的原因是两次做法,时间是差距很大的,主要是记住:当第二个栈空的时候,再一次性导入,没必要每次都插进去!第一次做法:class CQueue { Stack<Integer> stack; Stack<Integer> stack2; public CQueue() { stack = new Stack<Integer>(); stack2 = new Stack<Intege...

2021-01-11 21:16:19 227

原创 组合问题(1至4)

前三道组合问题都是很简单的用递归就能解决的但是第四道用回溯就超时了,当然可以用记忆化搜索的方式,但是我看了题解后,决定记录一下最简单的动态规划的思路class Solution { private List<List<Integer>> res = new LinkedList<>(); private void dfs(int n, int k, LinkedList<Integer> ls, boolean sign[], i

2021-01-11 21:15:54 290

原创 volatile原理

2021-01-11 21:15:44 257

原创 指令重排序

2021-01-11 21:15:28 212

原创 Java天生就是多线程程序

import java.lang.management.ManagementFactory;import java.lang.management.ThreadInfo;import java.lang.management.ThreadMXBean;class Solution { public static void main(String[] args) { // 获取java线程管理的MXBean ThreadMXBean threadMXBean.

2021-01-11 21:15:13 225

原创 并查集

并查集的详细讲解:https://oi-wiki.org/ds/dsu/#_6下题的详细解释:https://leetcode-cn.com/problems/smallest-string-with-swaps/solution/1202-jiao-huan-zi-fu-chuan-zhong-de-yuan-aob7/并查集的模版: private class UnionFind{ // 节点的祖先节点 private int []parent; .

2021-01-11 21:14:57 155

原创 Lucene倒排索引结构

总体过程:分词(统一大小写、过滤无用词(字符)、词还原等) 建立倒排索引([词,出现位置,出现频率]、词按字典序排序) 底层实现为三个文件(词典文件、频率文件、位置文件) 压缩存储查找某个词时,首先利用二分查找,查找到所在位置,然后利用词典文件指向频率文件和位置文件的指针,找到对应信息。第一步:取得关键词分词处理 过滤无用字符和标点 统一大小写 还原单词第二步:建立倒排索引第三步:实现第四步:压缩算法第五步:应用...

2021-01-11 21:14:34 389 1

原创 ES的深度查询问题

2020-12-22 16:15:28 889

原创 RPC原理

服务提供者在容器启动的时候,将自己所有的服务信息注册到注册中心,然后不断监听是否有服务调用信息,当有服务调用到来时,利用netty的编解码器进行数据解析后,对请求信息(包含了反射使用的信息)通过反射调用本地方法进行处理,处理后返回响应。 服务消费者不断监听服务注册中心的服务信息,将所有被注解标注的接口赋值为代理类,该代理类将接口信息和请求信息封装成Request对象,从注册中心拿到可以执行服务的服务地址端口等信息,通过netty连接到服务提供者,将Request信息发送至服务提供者端,接受...

2020-12-22 11:11:31 187 2

转载 Spring事务失效的8大原因

8种:数据库引擎不支持事务(都默认InnoDB了,一般不会发生) 没有被 Spring 管理(这......代码没写好,类没被加载到) 方法不是 public 的(这------这还真得⚠️) 自身调用问题(常见!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!) 数据源没有配置事务管理器(emmmm) 不支持事务(emmmm) 异常被吃了(常见!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!) 异常类型错误(常见!!!!!!!!!!!!!!!!!!!!!!!!!!!

2020-12-11 15:49:31 644

原创 微服务网关简述

1、什么是微服务网关微服务网关是整个微服务API请求的入口,可以实现:日志拦截 权限控制 解决跨域问题 限流 熔断 负载均衡 黑名单与白名单拦截 授权 ......2、过滤器与网关的区别过滤器用于拦截单个服务 网关拦截整个的微服务3、Zuul与Gateway有那些区别Zuul 网关属于 netfix 公司开源的产品属于第一代微服务网关 Gateway 属于SpringCloud自研发的第二代微服务网关 相比来说SpringCloud Gat...

2020-12-11 15:49:02 2355

原创 自定义注解案例(反射)

1、设置性别的注解import java.lang.annotation.*;/* 1、RetentionPolicy.SOURCE:注解只保留在源文件,当Java文件编译成class文件的时候,注解被遗弃; 2、RetentionPolicy.CLASS:注解被保留到class文件,但jvm加载class文件时候被遗弃,这是默认的生命周期; 3、RetentionPolicy.RUNTIME:注解不仅被保存到class文件中,jvm加载class文件之后,仍然存在; */@Documen

2020-12-09 16:21:26 329

原创 计算机科学领域的任何问题的解决方法

“Any problem in computer science can be solved by another layer of indirection.”“计算机科学领域的任何问题都可以通过增加一个间接的中间层来解决”

2020-12-09 09:29:48 649

原创 springboot日志显示冲突位置时最简单的解决方法

很多时候,日志冲突了,我们想着怎么去pom文件里面exclusive相关的jar包,很麻烦!其实我们直接去对应的位置把它删除掉就ok了!比如我出现了这个问题:SLF4J: Class path contains multiple SLF4J bindings.SLF4J: Found binding in [jar:file:/Users/qishi/flinklibs/log4j-slf4j-impl-2.12.1.jar!/org/slf4j/impl/StaticLoggerBin.

2020-12-06 16:01:27 735

原创 Canal监控库表代码(新)

网上的监控代码很多,但是我运行了几个后发现不太符合我们的sql语句格式。于是,自己写了一下,并且提供了很大的可扩展性:监控sql结果如下:[sql]----> UPDATE test.user SET name = 'vv' WHERE id = 1[sql]----> INSERT INTO test.user (id,name) VALUES (2,'aaa')[sql]----> DELETE FROM user WHERE id=2package com.

2020-12-06 11:37:01 639

原创 com.alibaba.otter.canal.protocol.exception.CanalClientException

如果你用canal连接mysql,查看日志没有发现错误,但是!!!!!!用客户端连接的时候出现了问题!!!!!!!记住铁子: CanalConnector connector = CanalConnectors.newSingleConnector(new InetSocketAddress(AddressUtils.getHostIp(), 11111), "example", "canal", "canal");port一定要设置成11111,因为这是.

2020-12-05 21:15:19 7780 2

原创 Mac mysql8安装canal1.1.5

我说实话!!!!!!!canal默认支持mysql8?!!!配了一下午,终于配好了......????1、下载canal包,解压,修改配置文件/usr/local/canal-1.1.5 » vim conf/example/instance.propertiescanal.instance.mysql.slaveId=1234# position infocanal.instance.master.address=localhost:3306# 自己数据库的用户密码c

2020-12-03 17:11:43 806 1

转载 MAC如何找到my.cnf

1. 找到mysqld的路径 which mysqld2. /usr/local/mysql/bin/mysqld --verbose --help |grep -A 1 'Default options'3. 下面就是my.cnf的路径

2020-12-03 14:07:05 2030

原创 mysql数据表创建格式

CREATE TABLE fileInfo ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键Id', `fileName` varchar(255) DEFAULT NULL COMMENT '文件名称', `suffix_type` varchar(255) DEFAULT NULL COMMENT '文件类型', `create_time` datetime NOT NULL COMMENT '创建时间', `update_time` da.

2020-12-01 16:24:34 1379

原创 Flink全

https://blog.youkuaiyun.com/cheni8327/article/details/100594476

2020-12-01 15:59:05 230

faster rcnn流程图.png

自己写的,也是花费了大量精力,希望对您有帮助! faster rcnn流程图

2020-07-04

MongoDB参考手册.zip

MongoDB中文教程

2019-05-17

mybatis数据库逆向工程

mybatis数据库逆向工程mybatis数据库逆向工程mybatis数据库逆向工程mybatis数据库逆向工程

2018-07-11

mybatis中文教程

mybatis中文教程mybatis中文教程mybatis中文教程mybatis中文教程mybatis中文教程

2018-07-07

项目管理课件真题

项目管理课件真题项目管理课件真题项目管理课件真题项目管理课件真题项目管理课件真题

2018-05-29

算法PPT和常用算法手册

算法PPT和常用算法手册算法PPT和常用算法手册算法PPT和常用算法手册算法PPT和常用算法手册算法PPT和常用算法手册算法PPT和常用算法手册

2018-05-09

软件测试PPT加题目总结

软件测试PPT加题目总结

2018-05-09

C++代码快速入门

C++代码快速入门C++代码快速入门C++代码快速入门C++代码快速入门C++代码快速入门

2018-05-09

hadoop各种资料

hadoop各种资料hadoop各种资料hadoop各种资料hadoop各种资料hadoop各种资料

2018-05-09

数据挖掘学习PPT

数据挖掘数据挖掘数据挖掘数据挖掘数据挖掘数据挖掘数据挖掘数据挖掘

2018-05-04

C#学习笔记

C#学习笔记C#学习笔记C#学习笔记C#学习笔记C#学习笔记C#学习笔记C#学习笔记C#学习笔记

2018-05-04

吴恩达机器学习课件

吴恩达机器学习课件吴恩达机器学习课件吴恩达机器学习课件吴恩达机器学习课件

2017-12-22

Linux网站搭建流程

Linux 网站搭建 关闭防火墙... [root@aliyun ~]# systemctl stop firewalld [root@aliyun ~]# systemctl disable firewalld

2017-12-22

数学建模教材(精品)

全书共三十二章,各章有一定的独立性,这样便于教师和学生按需要进行选择。 数学建模是对现实世界的特定对象,为了特定的目的,根据特有的内在规律,对其 进行必要的抽象、归纳、假设和简化,运用适当的数学工具建立的一个数学结构。数学 建模就是运用数学的思想方法、数学的语言去近似地刻画一个实际研究对象,构建一座 沟通现实世界与数学世界的桥梁,并以计算机为工具应用现代计算技术达到解决各种实 际问题的目的。建立一个数学模型的全过程称为数学建模。因此“数学建模”(或数学 实验)课程教学对于开发学生的创新意识,提升人的数学素养,培养学生创造性地应用 数学工具解决实际问题的能力,有着独特的功能。

2017-09-27

Linux操作系统实验教程_南大版

《Linux操作系统实验教程》是国防科技大学国家精品课程“操作系统”配套教材,系统地讲解了Linux操作系统原理和基于Linux的各种编程,特别是Linux操作系统内核编程。《Linux操作系统实验教程》内容分为三部分:第一部分介绍Linux操作系统原理;第二部分介绍10个基于Linux的实验;第三部分附录包含Linux环境下的操作及与编程有关的命令和函数列表。

2017-09-23

2016年考研核心考点——计算机组成原理

《2016 年考研核心考点命题思路解密 计算机组成原理》严格按照最新计算机考研 408 统考大纲的 计算机组成原理部分编写,涵盖大纲指定的所有考试内容。本书对统考大纲所涉及的知识点进行深入剖析 和总结,并精心策划和部署每一个章节,对每一个章节的考点做了独家策划。 本书每一个考点中的命题,绝大部分来源于历年名校计算机考研真题和统考真题,少部分来源名校期 末考试试题中的精华部分,是全国 408 统考大纲和高校考研真题的较好结合。为了提高考题的质量和解析 的准确度,参考资料采用以考研权威教材、习题、考研真题为主,多方借鉴众多高校从事多年教育的教师 课堂资料。梦享团队对每一个命题的思路和解题方法进行深入详细地讲解,并附上大量的图来帮助考生理 解记忆,力求考生能够通过掌握一个题目而达到举一反三,有利于考生利用更少的时间掌握更多的知识。 本书可作为考生参加计算机专业研究生入学考试的备考复习用书,也可作为计算机专业的学生学习计 算机组成原理的练习用书。

2017-09-23

2016年考研核心考点-----计算机网络

《2016 年考研核心考点命题思路解密 计算机网络》严格按照最新计算机考研 408 统考大纲的计算 机网络部分编写,涵盖大纲指定的所有考试内容。本书对统考大纲所涉及的知识点进行深入剖析和总结, 并精心策划和部署每一个章节,对每一个章节的考点做了独家策划。 本书每一个考点中的命题,绝大部分来源于历年名校计算机考研真题和统考真题,少部分来源名校期 末考试试题中的精华部分,是全国 408 统考大纲和高校考研真题的较好结合。为了提高考题的质量和解析 的准确度,参考资料采用以考研权威教材、习题、考研真题为主,多方借鉴众多高校从事多年教育的教师 课堂资料。梦享团队对每一个命题的思路和解题方法进行深入详细地讲解,并附上大量的图来帮助考生理 解记忆,力求考生能够通过掌握一个题目而达到举一反三,有利于考生利用更少的时间掌握更多的知识。 本书可作为考生参加计算机专业研究生入学考试的备考复习用书,也可作为计算机专业的学生学习计 算机网络的练习用书。

2017-09-23

空空如也

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

TA关注的人

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