从零开始新建Springboot项目之项目启动(一)

一般都是使用搭建好的框架进行业务逻辑开发,一直不清楚整个项目是如何从零到一构建出来的。所以开一个帖子,记录一下一个springboot项目是如何构建的。

使用的工具为idea

IDEA新建项目,起名字

选择maven或者spring initializr都可以。spring initializr会在pom中自动添加一些springboot用到的jar包,此处选择maven。起好名字后,一路next即可

image.png
image.png

Module构建

从实际开发角度,构建Module不是必选项。但学习嘛,还是要知道是怎么创建的

右键项目名称 -> New -> Module


image.png

依然选择maven,起名字即可。一般命名为:XXXX-Controller,XXXX-Service等等


image.png

建好后,pom中会多出以下内容


    Customer-Controller

在pom文件中引入springboot相关依赖

(放弃多模块配置)
可在此处搜索mvnrepository
首先添加parent,作为父级依赖。位置在的下一级,与org.example同级,


     org.springframework.boot
     spring-boot-starter-parent
    2.7.0

同级新建标签,引入web项目需要的依赖

  
        
            org.springframework.boot
            spring-boot-starter-web
            2.7.0
        
    

如果是多模块的项目,需要在每一个模块的pom文件中,添加其依赖的其他模块。例如controller依赖service,则需要在controller的pom文件中添加以下依赖信息。如果不是多模块项目,可以忽略

  
        dependency>
            org.example
            Customer-Service
            1.0-SNAPSHOT
        
    

添加启动入口

在java路径下新建顶级路径com.tardis,在此路径下新建文件CustomerApplication(名字随意)。新建controllerservicepackage。在CustomerApplication添加如下方法

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class CustomerApplication {
    public static void main(String[] args) {
        SpringApplication.run(CustomerApplication.class, args);
    }
}

文件的层级关系如图


image.png

创建配置文件

resource目录下,新建application.ymlapplication.dev.ymlapplication.prod.yml文件,作为总体,开发环境,生产环境的配置文件。配置文件格式为propertiesyml均可,此处使用yml,看起来比较简洁清晰
层级关系如图

image.png

为了更好地演示效果,可以先写一个简单的Controller进行测试,在controller文件夹中新建class,名字随意。文件层级如图。放一个最简单的接口。


image.png
package com.tardis.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
@RequestMapping(value = "/doctor")
public class DoctorController {

    @RequestMapping(value="/meetAngle", method = { RequestMethod.GET, RequestMethod.POST })
    @ResponseBody
    public String meetAngle() {
        return "Don't Blink!";
    }
}

使用postman调用,返回结果如下


image.png

你可能感兴趣的:(从零开始新建Springboot项目之项目启动(一))