欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

第一个SpringBoot项目

程序员文章站 2022-05-29 09:17:51
SpringBoot为我们提供了一系列的依赖包,所以需要构建工具的支持:Maven或Gradle。博主更习惯使用Maven,暂时学习教程基本采用所Maven与IntelliJ IDEA;新公司使用的是Gradle,所以后续可能会使用Gradle。框架基于目前最新的SpringBoot 2.1.1。 ......

springboot为我们提供了一系列的依赖包,所以需要构建工具的支持:maven或gradle。博主更习惯使用maven,暂时学习教程基本采用所maven与intellij idea;新公司使用的是gradle,所以后续可能会使用gradle。框架基于目前最新的springboot 2.1.1。

一、创建项目

第一个项目,先做一个简单的demo,能跑起来即可。

1.点击 file -> project;

2.选择spring initializr;

第一次用,建议选择的是spring initializr(官方的构建插件,需要联网),还有mavengradle可选,后续可选用。

选择sdk版本,本项目用的是jdk 1.8,然后点击next。

3.填写项目基本信息

第一个SpringBoot项目

  1. group:组织id,一般分为两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等,其中org为非营利组织,com为商业组织;
  2. artifact:唯一标识符,一般是项目名称;
  3. description:项目描述。

4.选择包

第一个SpringBoot项目

  1. 选择最新的springboot版本,最新的为2.1.1,即图中version;
  2. spring initializr为我们提供了很多的选项,不同的选项有不同的作用,第一个项目只需要依赖web -> web就可以了,选择好依赖包之后点击next->finish

5.目录结果

- src
    -main
        -java
            -package
                #主函数,启动类,运行它如果运行了 tomcat、jetty、undertow 等容器
                -springbootapplication    
        -resouces
            #存放静态资源 js/css/images 等
            - statics
            #存放 html 模板文件
            - templates
            #主要的配置文件,springboot启动时候会自动加载application.yml/application.properties        
            - application.yml
    #测试文件存放目录        
    -test
 # pom.xml 文件是maven构建的基础,里面包含了我们所依赖jar和plugin的信息
- pom

6.pom.xml 依赖

注意的是版本要选择release,稳定版本bug少

<?xml version="1.0" encoding="utf-8"?>
<project xmlns="http://maven.apache.org/pom/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
         xsi:schemalocation="http://maven.apache.org/pom/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <parent>
        <groupid>org.springframework.boot</groupid>
        <artifactid>spring-boot-starter</artifactid>
        <version>2.1.1.release</version>
    </parent>
    <modelversion>4.0.0</modelversion>
    <!--group:组织id,一般分为两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等,其中org为非营利组织,com为商业组织;-->
    <!--artifact:唯一标识符,一般是项目名称;-->
    <!--description:项目描述。-->
    <groupid>cn.van</groupid>
    <artifactid>springboot-demo</artifactid>
    <version>1.0-snapshot</version>
    <description>第一个springboot项目示例</description>
    <dependencies>
        <!-- 测试包,当我们使用 mvn package 的时候该包并不会被打入,因为它的生命周期只在 test 之内-->
        <dependency>
            <groupid>org.springframework.boot</groupid>
            <artifactid>spring-boot-starter-test</artifactid>
            <scope>test</scope>
        </dependency>
        <!-- web 包,默认就内嵌了tomcat 容器-->
        <dependency>
            <groupid>org.springframework.boot</groupid>
            <artifactid>spring-boot-starter-web</artifactid>
        </dependency>

    </dependencies>

    <build>
        <plugins>
            <!-- 编译插件 -->
            <plugin>
                <groupid>org.springframework.boot</groupid>
                <artifactid>spring-boot-maven-plugin</artifactid>
            </plugin>
        </plugins>
    </build>

</project>

7.主函数入口

一个项目中千万不要出现多个main函数,否在在打包的时候spring-boot-maven-plugin将找不到主函数(主动指定打包主函数入口除外…)

package com.van.dusty;

import org.springframework.boot.springapplication;
import org.springframework.boot.autoconfigure.springbootapplication;
import org.springframework.web.bind.annotation.getmapping;
import org.springframework.web.bind.annotation.restcontroller;

/**
 * 第一个springboot程序的启动类
 * 其中 @restcontroller 等同于 (@controller 与 @responsebody)
 */

@restcontroller
@springbootapplication
public class application {
    public static void main(string[] args) {
        springapplication.run(application.class, args);
    }

    @getmapping("/demo")
    public string demo() {
        return "hello springboot!";
    }
}

二、项目启动-测试

springboot默认的端口是 8080,启动项目后直接访问进行测试。

三、项目源码

https://github.com/vandusty/springboot-home/tree/master/springboot-demo-list/springboot-demo