原创 AbstractQueuedSynchronizer(AQS)的學習

一、AbstractQueuedSynchronizer是啥? 定義:是抽象的隊列式的同步器,AQS定義了一套多線程訪問共享資源的同步器框架,許多同步類實現都依賴於它,如常用的ReentrantLock/Semaphore/Co

原创 spring的三種注入方式

spring的三種注入方式 1.構造器注入 2.setter注入 3.註解(@Autowired、@Resource)

原创 Spring Bean定義的三種方式

Spring Bean定義的三種方式 <context-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:s

原创 SpringBoot整合redis——redisTemplate的使用

package com.ys.deam.utils; import org.springframework.data.redis.core.RedisTemplate; import org.springframework.stere

原创 java引用類型

Java四種引用類型 1、強引用(FinalReference): Object obj= new Object()//new 的對象都是是強引用 只要強引用存在,垃圾回收器將永遠不會回收被引用的對象,哪怕內存不足時,J

原创 swagger2

什麼是swagger2 swagger是一個restful接口的文檔自動生成和功能測試的框架 swagger是一個規範和完整的框架,用於生成、描述、調用和可視化restful風格的web服務 編寫和維護接口文檔是每個程序員的職

原创 ZooKeeper 工作、選舉 原理

ZooKeeper是一個分佈式的,開放源碼的分佈式應用程序協調服務,它包含一個簡單的原語集,分佈式應用程序可以基於它實現同步服務,配置維護和命名服務等。Zookeeper是hadoop的一個子項目,其發展歷程無需贅述。在分佈式

原创 使用mybatis向oracle數據庫寫入數據,實現主鍵自增,並返回主鍵

這是插入數據的方法  mapping文件中對應的方法   此時就可以將id設置爲自增. 然後在通過插入的對象獲取id的值!!! [來源](https://blog.csd

原创 橋接模式

橋接模式 概述:將抽象部分與他的實現部分分離,這樣抽象化與實現化解耦,使他們可以獨立的變化.如何實現解耦的呢,就是通過提供抽象化和實現化之間的橋接結構. 應用場景 實現系統可能有多個角度分類,每一種角度都可能變化. 解釋:橋接

原创 MySQL命令,一篇文章替你全部搞定

MySQL命令,一篇文章替你全部搞定 MySQL的基本操作可以包括兩個方面:MySQL常用語句如高頻率使用的增刪改查(CRUD)語句和MySQL高級功能,如存儲過程,觸發器,事務處理等。而這兩個方面又可以細分如下:MySQL常用語句

原创 適配器模式

前言 適配器模式是將一個類的接口轉換成客戶希望的另外一個接口,身邊很多東西都是適用於適配器模式的,筆記本的電源(也叫電源適配器),是將220V的交流電轉換爲筆記本電腦所需要的12V(電流先忽略),筆記本電腦的各種接口,VGA轉Hdml

原创 MyBatis框架及原理分析

MyBatis框架及原理分析 MyBatis 是支持定製化 SQL、存儲過程以及高級映射的優秀的持久層框架,其主要就完成2件事情: 1.封裝JDBC操作 2.利用反射打通Java類與SQL語句之間的相互轉換 MyBatis的主要設

原创 建造者模式

建造者模式(Builder Pattern) 使用多個簡單的對象一步一步構建成一個複雜的對象。這種類型的設計模式屬於創建型模式,它提供了一種創建對象的最佳方式。 意圖: 將一個複雜的構建與其表示相分離,使得同樣的構建過程可以創建

原创 Spring註解@Component、@Repository、@Service、@Controller區別

Spring註解@Component、@Repository、@Service、@Controller區別: •@Service用於標註業務層組件 •@Controller用於標註控制層組件(如struts中的action) •@R