小技巧:SpringBoot项目如何让前端开发提高效率?

233 阅读2分钟
原文链接: mp.weixin.qq.com

小技巧:SpringBoot项目如何让前端开发提高效率?

社会分工越来越细,对于工程类研发来说,全栈是越来越少了。这是时代的进步,也是个体的悲哀。

今天要分享的小技巧,或许能够大幅提高你的开发效率。你可以用省下来的时间打个盹,浏览个美女写真什么的。

本篇文章涉及的知识点有:

  • Swagger 为了文档

  • Nginx 为了效率

众所周知, java项目的启动速度就像沙子里走路。要是你的前端模块也很大,有一大堆 node_modulesSpringBoot会毫不犹豫的给你打包进去。每次修改前端页面,都需要打包才能调试,真是等的媳妇都跑了。可惜的是, vueangular等当道,每一个都又大又肥,苦也。

Swagger

swagger除了调试用,还可作为在线文档使用。给前端这个东西,后端基本上就可以闭嘴了。

快速集成

swagger配置还是有点工作量。所幸已经有了 starter封装。

首先, pom.xml 里放入

  1. <dependency>

  2.    <groupId>com.spring4all</groupId>

  3.    <artifactId>swagger-spring-boot-starter</artifactId>

  4.    <version>1.7.1.RELEASE</version>

  5. </dependency>

然后, application.yml 里放入

  1. swagger:

  2.  title: ${artifactId}

  3.  version: @version@

  4.  contact:

  5.    name: 小姐姐味道

  6.    email: xiaojiejie@sayhiai.com

  7.  base-package: com.sayhiai.controller

  8.  base-path: /**

  9.  exclude-path: /error, /ops/**

最后, App.java中加入注解

                                        
  1. @EnableSwagger2Doc

  2. @Slf4j

  3. public class App extends SpringBootServletInitializer {

  4.    public static void main(String[] args) {

  5.        SpringApplication.run(App.class, args);

  6.    }

三部曲完成以后,访问 http://{ip}:{port}/{contextPath}/swagger-ui.html ,就可以看到界面

好看一点

swagger改版后,颜值很低。我们尝试来改变它。

这里推荐两个界面。都是引入相应的jar包即可,不需要有任何其他改动。

swagger-ui-layer

                                                    
  1. <dependency>

  2.  <groupId>com.github.caspar-chen</groupId>

  3.  <artifactId>swagger-ui-layer</artifactId>

  4.  <version>${last-version}</version>

  5. </dependency>

swagger-bootstrap-ui

  1. <dependency>

  2.  <groupId>com.github.xiaoymin</groupId>

  3.  <artifactId>swagger-bootstrap-ui</artifactId>

  4.  <version>1.7</version>

  5. </dependency>

至于种草哪一个,看你喽。

Nginx

nginx才是本文的重点。主要是去做路由,方便你在 本地调试。哪怕服务端部署在其他环境。

本地启动一个 nginx,加几行配置就OK了

                                                                
  1. server {

  2.        listen       80;

  3.        location / {

  4.           proxy_pass  http://192.168.3.227:11057/;

  5.        }

  6.        location /static/ {

  7.            alias /codes/devops-publish-webapp/src/main/resources/static/;

  8.        }

稍微解释一下。

  • 访问 /时,默认去找服务端的rest请求

  • 访问前端页面时,指向本地的静态文件目录

是不是想大呼一声:卧槽,这么简单。对,就是这么简单!在后端解决跨域问题前,你甚至能将后端多个项目揉在一起。

其他

有同学反映有大量js在项目里的时候。打开Idea,会非常的慢。原因就是你的Idea在索引你的js文件。只要把静态目录排除掉就可以了。 这里这里