原创 SpringBoot迭代發佈JAR瘦身配置(續:將lib文件夾壓縮打包) 原 薦

上次寫了篇 《SpringBoot迭代發佈JAR瘦身配置》,但有一個問題,所有的第三方JAR位於lib目錄中,不利於傳輸到服務器,因此應該考慮將此目錄壓縮打包,再傳輸到服務器,服務器解壓即可使用。 經過一番google,找到類似的plugi

原创 Linux下的打包、壓縮、解壓總結 轉

.tar  解包:tar xvf FileName.tar 打包:tar cvf FileName.tar DirName (注:tar是打包,不是壓縮!) ——————————————— .gz 解壓1:gunzip FileName.g

原创 SpringBoot迭代發佈JAR瘦身配置 原 薦

默認情況下,插件 spring-boot-maven-plugin 會把整個項目打包成一個可運行的Jar包(即所謂的Flat Jar),導致了這個Jar包很大(通常有幾十M+)。如今迭代發佈時常有的事情,每次都上傳一個如此龐大的文件,會浪費

原创 SpringMVC支持可版本管理的Restful接口 頂 轉

需求 移動互聯網時代的到來,軟件開發的模式也在變化。記得以前做B/S的後臺開發,基本上沒有Http接口一說,全部是通過渲染模板技術(jsp,freemark)把最終html展示給最終用戶。現在完全變了,基於後臺接口提供方,我們從來不是針對

原创 分佈式鎖方案論證與實現 頂 原 薦

概述 我們在實際的接口或者業務開發中,不管是服務器單點還是服務器集羣,都會有分佈式鎖的使用場景。 比如最常見的接口重複提交(業務重複處理)、商品超賣等問題,通用的解決方案就是本文所使用的“分佈式鎖”, 在同一個業務中,其中一個請求獲取到鎖

原创 thymeleaf 不檢查html語法錯誤 原

使用springboot的thymeleaf模板時默認會對HTML進行嚴格的檢查,導致當你的標籤沒有閉合時就會通不過,例如: //要想通過,後面的閉合必須寫成 /> <meta charset="UTF-8"> 不僅是HTML代碼會這樣

原创 將項目jar發佈到nexus 原

pom配置nexus私服地址: <distributionManagement> <snapshotRepository> <id>snapshots</id> <url>http://10.8

原创 Linux jdk安裝 原

解壓jdk-8u162-linux-x64.tar.gz:tar -zxf jdk-8u162-linux-x64.tar.gz   配置環境變量: vi /etc/profile JAVA_HOME=/home/dongsilin/dev

原创 springboot 跨域cors配置 原

springboot中通過cors協議解決跨域問題   1、對於前後端分離的項目來說,如果前端項目與後端項目部署在兩個不同的域下,那麼勢必會引起跨域問題的出現。 針對跨域問題,我們可能第一個想到的解決方案就是jsonp,並且以前處理跨域問

原创 maven-tomcat7-plugin 配置 原

Tomcat插件配置: <build> <plugins> <plugin> <groupId>org.apache.tomcat.maven</groupId> <a

原创 Springmvc controller 自定義參數注入 頂 原

聲明註解 @Target({ElementType.PARAMETER}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface CurrentUser { }

原创 docker redis 集羣(cluster)搭建 原 薦

前言         在開發環境中,大家應該都用的是redis單點吧,但是在生產環境中我相信沒有人敢用單點的,應該都是用的cluster,因爲萬一單點掛掉的話,我們的應用也就自然而然的ConnectionException。那麼,接下來我就

原创 Maven常用命令 原

mvn clean [-Dmaven.test.skip=true]    清理編譯文件,清理target文件 mvn compile [-Dmaven.test.skip=true]    編譯主目錄文件 mvn test    編譯並

原创 Springboot的遠程調試 原

Springboot的遠程調試 Intellij IDEA基於Springboot的遠程調試

原创 將自己的 jar 包發佈到 maven 中央倉庫 頂 原 薦

註冊 首先到sonatype官網進行註冊! 找到註冊“sign up”,如圖,進行註冊! 登錄 登錄後,在頁面上方點擊“create”進行創建 issue。 獲得如下圖所示。 Summary:寫你想做什麼,你的包的功能。簡單概述,