原创 設計模式-三種工廠模式的區別

下面例子中鼠標,鍵盤,耳麥爲產品,惠普,戴爾爲工廠。 簡單工廠模式 簡單工廠模式不是 23 種裏的一種,簡而言之,就是有一個專門生產某個產品的類。 比如下圖中的鼠標工廠,專業生產鼠標,給參數 0,生產戴爾鼠標,給參數 1,生產惠普鼠標。

原创 java多線程-經典生產者消費者問題

問題: 寫一個固定容量同步容器,擁有put和get方法,以及getCount方法,能夠支持2個生產者線程以及5個消費者線程的阻塞調用。 方案一: 1.使用synchronized、notifyAll、wait實現 public c

原创 springboot整合Quartz

前言 我們在開發系統時,可能會要使用到定時任務模塊,比如:訂單超時取消。目前常用的有:jdk 自帶的Timer、ScheduledExecutorService線程池、spring定時任務、Quartz、elastic-job、

原创 商城系統-數據庫設計

說明 我這裏只提供相關博客鏈接,個人覺得博主博客寫的不錯,所以整理鏈接搬上來,方便查看 內容 1.電商系統——用戶模塊:https://segmentfault.com/a/1190000015294891 2.電商系統——購物車

原创 Git 命令速查圖

原创 springboot使用攔截器進行校驗token(post和get獲取token參數)

前言 前面我做了一個簡單的jwt校驗token的demo案例,再後來的開發過程中我遇到一個問題:我們前臺在調用後臺接口時,用的最多的contentType是application/x-www-form-urlencoded、app

原创 電商商品列表應以SPU還是SKU展示商品?

我們先了解下,SPU和SKU的概念,方便大家跟上思路,如下: SPU(Standard Product Unit):標準化產品單元。是商品信息聚合的最小單位,是一組可複用、易檢索的標準化信息的集合,該集合描述了一個產品的特性。通俗

原创 推薦2個數據結構和算法網址-演示常見數據結構算法

Data Structure Visualizations 網址:https://www.cs.usfca.edu/~galles/visualization/Algorithms.html 排序算法:https://visual

原创 微信小程序給底部tabBar圖標添加角標

前言 在一般的商城類app或者小程序,一般購物車菜單都會有右上角角標。今天我這裏在微信小程序上進行實現。 思路 查看微信小程序官方文檔: 實現 let cartNum = ; //通過後臺接口獲取 if (cartNum

原创 微信小程序實現下滑到底部進行自動翻頁功能

前言 這段時間接了一個微信小程序項目,從此打開小程序的新世界大門。然後發現使用頁碼進行翻頁已經不適用於手機app,我們日常中實用的手機app或者小程序進行翻頁一般都是使用底部後下拉的方式。 解決思路 我發現微信小程序遠程組件提供了

原创 centos7 設置nginx開機自啓(systemctl和init.d兩種方案)

這裏提供兩種方案,推薦第二種 方案一(init.d) 1.進入/etc/init.d/ cd /etc/init.d/ 2.創建nginx文件 touch nginx 3.vim編輯nginx,注意替換自己系統的nginx路徑

原创 十大排序算法-插入排序

插入排序(Insertion Sort) 原理:就好比我們打撲克排的抓牌階段,我們一般拿到一張新的排會與前面的牌進行比較,然後放到合適的位置,即每次抓到牌後默認前面的牌已經全部排好序。 將第一待排序序列第一個元素看做一個有序序列

原创 十大排序算法-歸併排序

歸併排序(Merge Sort) 原理:採用遞歸思想,分而治之。將數組從中間分割成兩部分數組進行排序,其中左半部分和右半部分又遞歸式進行分割排序,直到分割後的數組只剩兩個元素,再逐級向上返回排序好的結果。 歸併排序(MERGE-

原创 消息隊列-ActiveMQ P2P模式

1.導依賴包 <dependency> <groupId>org.apache.activemq</groupId> <artifactId>activemq-all</artifactId> <version>5

原创 在centos7上安裝redis和配置開機自啓

1.準備安裝包 方法一:官網下載,通過sftp傳到centos 方案二:安裝wget,通過wget在線下載安裝包 ,自己指定版本http://download.redis.io/releases/redis-xxx.tar.gz