淺談SpringBoot項(xiàng)目如何讓前端開(kāi)發(fā)提高效率(小技巧)
社會(huì)分工越來(lái)越細(xì),對(duì)于工程類研發(fā)來(lái)說(shuō),全棧是越來(lái)越少了。這是時(shí)代的進(jìn)步,也是個(gè)體的悲哀。
今天要分享的小技巧,或許能夠大幅提高你的開(kāi)發(fā)效率。你可以用省下來(lái)的時(shí)間打個(gè)盹,瀏覽個(gè)美女寫真什么的。
本篇文章涉及的知識(shí)點(diǎn)有
- Swagger 為了文檔
- Nginx 為了效率
眾所周知, java
項(xiàng)目的啟動(dòng)速度就像沙子里走路。要是你的前端模塊也很大,有一大堆 node_modules
, SpringBoot
會(huì)毫不猶豫的給你打包進(jìn)去。每次修改前端頁(yè)面,都需要打包才能調(diào)試,真是等的媳婦都跑了??上У氖牵?vue
、 angular
等當(dāng)?shù)?,每一個(gè)都又大又肥,苦也。
Swagger
swagger
除了調(diào)試用,還可作為在線文檔使用。給前端這個(gè)東西,后端基本上就可以閉嘴了。
快速集成
swagger
配置還是有點(diǎn)工作量。所幸已經(jīng)有了 starter
封裝。
首先, pom.xml
里放入
<dependency> <groupId>com.spring4all</groupId> <artifactId>swagger-spring-boot-starter</artifactId> <version>1.7.1.RELEASE</version> </dependency>
然后, application.yml
里放入
swagger: title: ${artifactId} version: @version@ contact: name: 小姐姐味道 email: xiaojiejie@sayhiai.com base-package: com.sayhiai.controller base-path: /** exclude-path: /error, /ops/**
最后, App.java
中加入注解
@EnableSwagger2Doc @Slf4j public class App extends SpringBootServletInitializer { public static void main(String[] args) { SpringApplication.run(App.class, args); }
三部曲完成以后,訪問(wèn) http://{ip}:{port}/{contextPath}/swagger-ui.html
,就可以看到界面啦
好看一點(diǎn)
swagger
改版后,顏值很低。我們嘗試來(lái)改變它。
這里推薦兩個(gè)界面。都是引入相應(yīng)的jar包即可,不需要有任何其他改動(dòng)。
swagger-ui-layer
<dependency> <groupId>com.github.caspar-chen</groupId> <artifactId>swagger-ui-layer</artifactId> <version>${last-version}</version> </dependency>
swagger-bootstrap-ui
<dependency> <groupId>com.github.xiaoymin</groupId> <artifactId>swagger-bootstrap-ui</artifactId> <version>1.7</version> </dependency>
至于種草哪一個(gè),看你嘍。
Nginx
nginx
才是本文的重點(diǎn)。主要是去做路由,方便你在 本地調(diào)試
。哪怕服務(wù)端部署在其他環(huán)境。
本地啟動(dòng)一個(gè) nginx
,加幾行配置就OK了
server { listen 80; location / { proxy_pass http://192.168.3.227:11057/; } location /static/ { alias /codes/devops-publish-webapp/src/main/resources/static/; }
稍微解釋一下。
- 訪問(wèn) /時(shí),默認(rèn)去找服務(wù)端的rest請(qǐng)求
- 訪問(wèn)前端頁(yè)面時(shí),指向本地的靜態(tài)文件目錄
是不是想大呼一聲:臥槽,這么簡(jiǎn)單。對(duì),就是這么簡(jiǎn)單!在后端解決跨域問(wèn)題前,你甚至能將后端多個(gè)項(xiàng)目揉在一起。
其他
有同學(xué)反映有大量js在項(xiàng)目里的時(shí)候。打開(kāi)Idea,會(huì)非常的慢。原因就是你的Idea在索引你的js文件。只要把靜態(tài)目錄排除掉就可以了。 這里這里:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
java8 stream 由一個(gè)list轉(zhuǎn)化成另一個(gè)list案例
這篇文章主要介紹了java8 stream 由一個(gè)list轉(zhuǎn)化成另一個(gè)list案例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-08-08Java純代碼實(shí)現(xiàn)導(dǎo)出文件為壓縮包
這篇文章主要為大家詳細(xì)介紹了Java如何代碼實(shí)現(xiàn)導(dǎo)出文件為壓縮包,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-02-02Java虛擬機(jī)如何運(yùn)行Java字節(jié)碼
這篇文章主要介紹了Java虛擬機(jī)如何運(yùn)行Java字節(jié)碼的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-06-06String s = new String(''a '') 到底產(chǎn)生幾個(gè)對(duì)象
這篇文章主要介紹了String s = new String(" a ") 到底產(chǎn)生幾個(gè)對(duì)象,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-05-05SpringBoot?SpringSecurity?詳細(xì)介紹(基于內(nèi)存的驗(yàn)證)
這篇文章主要介紹了SpringBoot?SpringSecurity?介紹(基于內(nèi)存的驗(yàn)證),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-04-04如何在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn)
這篇文章主要介紹了如何在Spring Boot應(yīng)用程序中配置了兩個(gè)不同的SOAP Web服務(wù)端點(diǎn),本文通過(guò)示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-08-08解決java啟動(dòng)時(shí)報(bào)線程占用報(bào)錯(cuò):Exception?in?thread?“Thread-14“?java.ne
這篇文章主要給大家介紹了關(guān)于解決java啟動(dòng)時(shí)報(bào)線程占用:Exception?in?thread?“Thread-14“?java.net.BindException:?Address?already?in?use:?bind的相關(guān)資料,文中將解決的辦法介紹的非常詳細(xì),需要的朋友可以參考下2023-04-04