@RestControllerAdvice与@ExceptionHandler注解源码详解

一、处理流程@RestControllerAdvice与@ExceptionHandler注解是sprngmvc中与异常捕获与处理相关的注解,它的入口也是DispatcherServlet中的doDispatcher()方法中,如下:this.processDispatchResult(processedRequest, response, mappedHandler, mv, (Exceptio...
分类: 其他 发布时间: 06-18 23:29 阅读次数: 3

intellij idea工具相关文章

debug功能使用详解idea快捷键win到Mac对照表github上的idea使用者文档
分类: 其他 发布时间: 06-18 23:28 阅读次数: 3

docker for mac教程

安装教程:macOS 安装 Docker
分类: 其他 发布时间: 06-18 23:28 阅读次数: 3

Spring中调用http的方式WebClient

在Spring5以前调用http 接口可以可以选用RestTemplate类,在Spring5以后,在Spring-webflux包中有一个更为合适的类型,叫做WebClient,能做到自己封装同步调用和异步调用,下面献上我自己的WebClient的配置和使用。WebClient配置: @Test public void userSelect() throws SSLExceptio...
分类: 其他 发布时间: 06-18 23:28 阅读次数: 3

Docker教程(二)docker原理

一、Docker是如何实现资源隔离的docker的资源隔离使用到了LXC(linux Container即linux容器)Kernel namespace技术。隔离分为以下几个方面:二、资源限制docker底层使用了cgroup来进行内存大小、CPU等的资源限制。...
分类: 其他 发布时间: 06-18 23:28 阅读次数: 3

SpringBoot中SpringApplication.run()方法执行两遍源码

在SpringBoot中,SpringApplication.run()方法执行了两遍。
分类: 其他 发布时间: 06-18 23:27 阅读次数: 3

Spring5中Reactor编程的Mono与Flux类源码解读

Spring5的函数式编程使用了ProjectReactor工程的类,使用最为多的就是Mono和Flux类型,其中Mono是针对0到1个元素进行操作,Flux是针对多个元素进行操作。要使用这两个类前提是自己要有jdk8,Lambda,函数式编程的基础,否则请先学习了以上知识再来接触Spring5的Mono和FLux。我们针对Mono类的一行代码,来进行源码分析与讲解。代码如下:Mono.just(...
分类: 其他 发布时间: 06-18 23:27 阅读次数: 3

SpringSecurity的源码解析

SpringSecurity是spring家族中的一份子,关于使用方式我们不多说,我们看下其执行源码路径如何,介绍依赖于注解的配置。因为我们的项目中采用了Spring5的Reactor响应式框架,它底层是基于netty的网络编程。所以程序入口是在NioEventLoop的run方法中:如下:try { processSelectedKeys(); ...
分类: 其他 发布时间: 06-18 23:27 阅读次数: 3

关于Spring-webflux编程中body只能获取一次的问题解决方案

无论在Spring5的webflux编程或者普通web编程中,只能从request中获取body一次,后面再获取就会报错,但我们有时候会需要获取body中的数据进行加签、验签,这个问题怎么解决呢。ServerHttpRequestDecorator与ServerWebExchangeDecorator在Spring-webflux编程中,为我们提供了ServerHttpRequest和Server...
分类: 其他 发布时间: 06-18 23:26 阅读次数: 5

Spring-security在SpringMvc中的使用

Spring-security是spring中的校验流程,有SpringMVC配置和SpringFlux配置两种模式,关于使用方式,我们在这里说下1、SpirngMVC中的Security配置在SpirngMVC中的Security配置,我们需要有一个类继承WebSecurityConfigurerAdapter类,在里面可以配置自己需要的bean和拦截属性,更多详细介绍请看官方文档,这里只是简单...
分类: 其他 发布时间: 06-18 23:26 阅读次数: 10

Springboot@Configuration注解被扫面注射为bean的源码解析(一)

一、入口Springboot中@Configuration注解被扫描到的入口在AbstractApplicationContext类中的invokeBeanFactoryPostProcessors(beanFactory);方法中,方法上面有一行注解为// Invoke factory processors registered as beans in the context.意思是把处理bea...
分类: 其他 发布时间: 06-18 23:26 阅读次数: 3

Springboot@Configuration注解被扫面注射为bean的源码解析(二)

在Springboot中,@Configuration注解是最重要的注解之一,相当于Spring中的xml,关于Springboot源码中是如何解析@Configuration注解的。是我们这篇文章后面要探讨的内容。一、入口解析@Configuration注解的入口还是在AbstractApplicationContext类的invokeBeanFactoryPostProcessors(bean...
分类: 其他 发布时间: 06-18 23:26 阅读次数: 3

FileInputStream和FileReader的区别

简述FileInputStream和FileReader的区别 核心提示:1 ) File 类介绍 File 类封装了对用户机器的文件系统进行操作的功能。例如,可以用 File 类获得文件上次修改的时间,移动,或者对文件进行删除、重命名。换句话说,流类关注的是文件内容,而 File 类关注的是文件在磁盘上的存储 File 类的主要方法有(),last 1 ) File 类介绍 F
分类: 其他 发布时间: 06-18 23:25 阅读次数: 3

Weka项目中的ARFF文件结构解析

Weka作为数据挖掘开源项目中的经典,很多算法和数据的组织结构是值得学习的。Weka里面大量使用了一种叫做arff(Attribute-Relation File Format )的数据文件结构。这种arff文件内部结构很简单,主要是测试算法使用的轻量级的数据文件结构。OpenMiner继承Weka的风格,也打算支持arff文件格式,并且作为前期的挖掘算法测试数据来源。下面是我从网上找到的关于这种
分类: 其他 发布时间: 06-18 23:25 阅读次数: 3

POJ上的LCA问题小节(转)

1330和1470是入门系列,可以说基本上时用来测试板子的 1986比上面两个稍微多了一个距离,但是本质还是一样的对于一个询问d[u,v]=dis[u]+dis[v]-dis[LCA(u,v)] 可以一边LCA一边动态修改当前点到根的距离 3728其实就是记录的东西多了一点(1)孩子到父亲最大价格(2)孩子到父亲最小价格(3)从自己到祖先的最大收益 (4)从祖先到自己的最大收
分类: 其他 发布时间: 06-18 23:25 阅读次数: 3

codeforces 159D Palindrome pairs

分析:很容易想到的就是暴力解决,枚举以i为分隔点进行前后回文串总数的相乘。一开始想的可能会超时,结果AC了,不过网上还有一种比较省时的枚举回文串的方法,比较好! 虽然上面显示dp,string,但我感觉这完全就是string 的题目。
分类: 其他 发布时间: 06-18 23:24 阅读次数: 3

汇编基础--CMP汇编指令

cmp是比较指令,cmp的功能相当于减法指令。它不保存结果,只是影响相应的标志位。其他的指令通过识别这些被影响的标志位来得知比较结果。      cmp指令格式:   cmp   操作对象1, 操作对象2      计算 操作对象1 - 操作对象2 但不保存结果,只是根据结果修改相应的标志位。      举例假如此时eax = 0h      那么cmp eax, eax
分类: 其他 发布时间: 06-18 23:24 阅读次数: 6

CodeForces 25D Roads not only in Berland

题意:给你N个点,N-1条边,通过删边建边将图变成一棵树,注:删边==建边。 分析:水题,并查集就行。 代码: #include #include #include using namespace std; const int maxn = 1010; int pa[maxn]; struct Node{ int u,v; }cut[maxn]; int Find(int x){
分类: 其他 发布时间: 06-18 23:23 阅读次数: 3

cmd常用运行指令

开始→运行→CMD→键入以下命令即可:  gpedit.msc-----组策略 sndrec32-------录音机  Nslookup-------IP地址侦测器 explorer-------打开资源管理器  logoff---------注销命令 tsshutdn-------60秒倒计
分类: 其他 发布时间: 06-18 23:23 阅读次数: 3

MyEclipse 10官网下载地址以及破解方法

刚刚发布了MyEclipse 10,我现在用的还是6.5的版本,6.5的版本是我觉得最好用的一个版本。   我装上了,还没感受到有哪些好用,就是感觉体积庞大,和IBM 的WID一样,是个多面手,啥事都能干,其实经常能使用的也就其中那么几个功能,要是能像插件一样,即插即用就好了。   MyEclipse 10使用最高级的桌面和Web开发技术,包括 HTML5 和 Java EE 6,支持 JPA
分类: 其他 发布时间: 06-18 23:23 阅读次数: 3