SpringBootSecurity學習(17)前后端分離版之 OAuth2.0 數據庫(JDBC)存儲客戶端
自動批準授權碼 前面我們授權的流程中,第一步獲取授權碼的時候,都會經歷一個授權是否同意頁面: 這個流程就像第三方登錄成功后,提問是否允許獲取昵稱和頭像信息的頁面一樣,這個過程其實是可以自動同意的,需要在客戶端配置中,增加一個自動批準: 這樣我們申請授權碼直接就可以得到: 在流程需要自動完成的時候,需 ...
ES6入門之Promise對象
1. Promise 的含義 Promise 是異步編程的一種解決方案,比傳統的解決方案 回調函數和事件更合理、更強大。 1.1 什么是Promise 簡單來說就是一個容器,里面保存著某個未來才會結束的事件(也就是異步操作)的結果。從語法上來講,Promise是一個對象,從它可以獲取異步操作的消息, ...
品Spring:對@Autowired和@Value注解的處理方法
在Spring中能夠完成依賴注入的注解有JavaSE提供的@Resource注解,就是上一篇文章介紹的。還有JavaEE提供的@javax.inject.Inject注解,這個用的很少,因為一般都不會去引用JavaEE的jar包。編程新說注:JavaEE早已經被Oracle拋棄了。JavaEE這個名 ...
netty源碼解解析(4.0)-23 ByteBuf內存管理:分配和釋放
ByteBuf內存分配和釋放由具體實現負責,抽象類型只定義的內存分配和釋放的時機。 內存分配分兩個階段: 第一階段,初始化時分配內存。第二階段: 內存不夠用時分配新的內存。ByteBuf抽象層沒有定義第一階段的行為,但定義了第二階段的方法: public abstract ByteBuf capac ...
java架構之路-(面試篇)Mysql面試大全
說一下mysql比較宏觀的面試,具體咋寫sql的這里就不過多舉例了。后面我還會給出一個關于mysql面試優化的試題,這里主要說的索引和B+Tree結構,很少提到我們的集群配置優化方案。 1.索引是什么?有什么作用以及缺點 答:索引是對數據庫表中一列或多列的值進行排序的一種結構,使用索引可快速訪問數據 ...
一文讀懂Java GC原理和調優
概述 本文介紹GC基礎原理和理論,GC調優方法思路和方法,基于Hotspot jdk1.8,學習之后將了解如何對生產系統出現的GC問題進行排查解決 閱讀時長約30分鐘,內容主要如下: GC基礎原理,涉及調優目標,GC事件分類、JVM內存分配策略、GC日志分析等 CMS原理及調優 G1原理及調優 GC ...
Go語言入門教程(十)之函數
Hello 各位小伙伴大家好,我是小棧君,假期一眨眼就過去了。不知道大家玩的是否開心呢? 上次我們講到了關于Go語言的流程控制,小棧君也希望小伙伴跟著小棧君一步一個腳印的敲一下代碼,相互進步。本期我們要分享的Go語言系列之函數。 一、什么是函數? 函數是指一段在一起的、可以做某一件事兒的程序。也叫做 ...
Redis Cluster 原理相關說明
背景 之前寫的 Redis Cluster部署、管理和測試 和 Redis 5.0 redis-cli --cluster help說明 已經比較詳細的介紹了如何安裝和維護Cluster。但關于Cluster各個節點的通信和原理沒有說明,為了方便自己以后查閱,先做些記錄。順便對Redis 4.0和5 ...
實際體驗華為云AI : ModelArts
國慶前看到了博客園官方博客發布的一篇博客: "學AI有獎:博客園&華為云AI有獎訓練營開戰啦" 本著對AI這種火熱的話題,以及華為云博客園聯名公仔(次要),我決定參與這個活動。 現在華為云開始全面發力,追趕阿里云,從華為云的表現上來說應該是。推出了各種優惠活動,和各種產品,其中就包括華為云的AI服務 ...
spring源碼分析系列3:BeanFactory核心容器的研究
@ "TOC" 在講容器之前,再明確一下知識點。 BeanDefinition是Bean在容器的描述。BeanDefinition與Bean不是一個東西。 Bean是根據BeanDefinition創建出來的。也即是我們所說的對象。 BeanDefinition物料需要有地方存儲,Bean成品需要有 ...
魔鬼在細節,理解Java并發底層之AQS實現
jdk的JUC包(java.util.concurrent)提供大量Java并發工具提供使用,基本由Doug Lea編寫,很多地方值得學習和借鑒,是進階升級必經之路 本文從JUC包中常用的對象鎖、并發工具的使用和功能特性入手,帶著問題,由淺到深,一步步剖析并發底層AQS抽象類具體實現 名詞解釋 1 ...
淺談大規模高并發服務的伸縮問題
什么是大規模高并發? 大規模高并發是兩個詞,前者表示有大量的流量訪問,后者表示競爭狀態下并發可能會遇到的一致性和可用性問題。 有什么問題? 如果只是大規模的流量,我們可以簡單的進行負載均衡和針對架構層面的優化就能解決,這一塊和業務并無直接聯系。 但是高并發就不一樣了,就算只有不太多的流量,只要存在并 ...
spring5 源碼深度解析----- 創建AOP代理之獲取增強器
在上一篇的博文中我們講解了通過自定義配置完成了對AnnotationAwareAspectJAutoProxyCreator類型的自動注冊,那么這個類到底做了什么工作來完成AOP的操作呢?首先我們看看AnnotationAwareAspectJAutoProxyCreator的層次結構,如下圖所示: ...
開源大閱兵:盤點那些走向世界的中國項目
“開源(Open Source)”,這個在程序員界耳熟能詳的詞,幾乎充斥著我們的整個職業生涯。相信沒有一個程序員不知道啥是“開源”,相信沒有一個程序員從來沒用過“開源”產品。回顧一下,我們所熟知的一些偉大開源項目幾乎都出自國外的程序大師或組織。然而,這幾年國人也貢獻了不少優秀的開源項目與產品,甚至有 ...
Java 網絡爬蟲,就是這么的簡單
這是 Java 網絡爬蟲系列文章的第一篇,如果你還不知道 Java 網絡爬蟲系列文章,請參看 "學 Java 網絡爬蟲,需要哪些基礎知識" 。第一篇是關于 Java 網絡爬蟲入門內容,在該篇中我們以采集虎撲列表新聞的新聞標題和詳情頁為例,需要提取的內容如下圖所示: 我們需要提取圖中圈出來的文字及其對 ...
Mysql高手系列 - 第18篇:mysql流程控制語句詳解(高手進階)
Mysql系列的目標是:通過這個系列從入門到全面掌握一個高級開發所需要的全部技能。 這是Mysql系列第18篇。 環境:mysql5.7.25,cmd命令中進行演示。 代碼中被[]包含的表示可選,|符號分開的表示可選其一。 上一篇 "存儲過程&自定義函數" ,對存儲過程和自定義函數做了一個簡單的介紹 ...
05-pandas索引切片讀取數據缺失數據處理
引入 numpy已經能夠幫助我們處理數據,能夠結合matplotlib解決我們數據分析的問題,那么pandas學習的目的在什么地方呢? numpy能夠幫我們處理處理數值型數據,但是這還不夠 很多時候,我們的數據除了數值之外,還有字符串,還有時間序列等 比如:我們通過爬蟲獲取到了存儲在數據庫中的數據 ...
設計模式-行為型-中介者模式
中介者模式(Mediator): 在現實生活中,有很多中介者模式的身影,例如QQ游戲平臺,聊天室、QQ群、短信平臺和房產中介。不論是QQ游戲還是QQ群,它們都是充當一個中間平臺,QQ用戶可以登錄這個中間平臺與其他QQ用戶進行交流,如果沒有這些中間平臺,我們如果想與朋友進行聊天的話,可能就需要當面才可 ...
.Net Core與Vue.js模塊化前后端分離快速開發解決方案,已升級到.Net Core 3.0(NetModular)
吐槽,好好的一個演示項目,總有一些自以為事的xx瞎改 NetModular是什么? 不僅僅是一個框架,它也是一整套的模塊化與前后端分離的快速開發的解決方案,目標是致力于開箱即用,讓開發人員完全專注于業務開發,不需要關心底層封裝和實現。(距離目標仍任重而道遠~) 項目結構 功能介紹 后端框架 00_H ...