蒼穹外賣 - day1

直来直往1發表於2024-07-10

1.專案介紹

業務功能

技術選型

環境搭建

  • 前端
    前端部分非重點,直接由平臺提供,部署在nginx伺服器上。

nginx概念

  • 反向代理與負載均衡

    動態監聽80埠,將請求轉發到目標伺服器,若有多個目標伺服器,則採取負載均衡策略進行請求的分發(如輪詢)

  • 後端

介面文件

1. YApi

透過上傳json檔案或swagger檔案批次匯入介面資訊,用於前後端人員的介面資訊的對接。

2.Swagger

Swagger能夠自動生成介面文件以及線上介面除錯頁面
Knife4j是Java MVC框架整合Swagger生成Api文件的增強解決方案,常用於後端開發人員做介面測試。

1.匯入相關依賴。
        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>knife4j-spring-boot-starter</artifactId>
        </dependency>
2.在配置類中新增相關配置
    //在容器中放入生成介面文件的元件
    @Bean
    public Docket docket() {
        // 介面文件資訊
        ApiInfo apiInfo = new ApiInfoBuilder()
                .title("蒼穹外賣專案介面文件")
                .version("2.0")
                .description("蒼穹外賣專案介面文件")
                .build();
        // 設定需要生成介面文件的包
        Docket docket = new Docket(DocumentationType.SWAGGER_2)
                .apiInfo(apiInfo)
                .select()
                .apis(RequestHandlerSelectors.basePackage("com.sky.controller"))
                .paths(PathSelectors.any())
                .build();
        return docket;
    }

    // 設定靜態資源對映
    protected void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/doc.html").addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**").addResourceLocations("classpath:/META-INF/resources/webjars/");
    }
3.常用介面

相關文章