10月29, 2018

Spring Boot(二) 工程简述

Spring Boot 工程简述

手动创建Spring Boot 工程

我们以一个简单功能为列子,完全手动的搭建Spring Boot工程 功能描述: 浏览器访问 127.0.0.1:8080,服务器接收请求并响应,页面上直接返回Hello World字符串

1.创建Maven工程

无论怎么样,首先需要创建一个Maven工程 创建Maven工程 选择创建Maven简单工程 输入项目名

这样创建完成之后,这个Maven工程的项目目录,已经POM.xml就是下面这个样子的:

Maven工程基本结构

2.导入SpringBoot相关依赖

首先是整个Spring Boot工程最重要的启动器

spring-boot-starter-parent

<!-- Inherit defaults from Spring Boot -->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.17.RELEASE</version>
</parent>

这个启动器starter是什么意思?简单来说,Spring Boot之所以能快速的创建项目,就是又把之前一个个比较分散的包依赖,再次做了整合,以后要再通过Maven工程导入包依赖,其实就是启动一个个的starter

注意: 如果Maven工程没有自动更新,工程可能会报错,所以最好手动的让Maven工程更新一下,右键点击工程 -> Maven -> Update Project...

由于,我们需要创建的是一个Web工程,所以,我们还需要创建一个Web的启动器

spring-boot-starter-web

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

当这个POM.xml保存时,相关的jar包就会下载,下载完成之后大概就是下面这个样子: -w462

注意: 如果你没有配置自定义的Maven配置,第一次jar包的下载过程就会很慢,而且还可能存在包下载不完整的坑,这个相信大家在使用Maven的时候都遇到过这个坑,所以建议大家还是先配置Maven。

3.创建SpringBoot程序入口

src/main/java下创建相关包,并创建SpringBoot程序入口: -w914

package com.yingside.springboot;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

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

4.创建Controller接收页面信息,并反馈消息

-w890

package com.yingside.springboot.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloController {

    @RequestMapping("/")
    public String sayHello() {
        return "Hello World!";
    }
}

注意: 这里文件的存放位置,SpringBoot相当的方便,但是这种方便肯定是有代价的,那就是"约定大于配置",在不改动SpringBoot默认配置的情况下,Spring Boot里面每种类型文件存放的位置是有默认的约定的,如果你不按照约定去存放,那肯定就有问题

一般情况下,后台java代码,我们默认按照下面的路径去存放比较合适(包名是自定义的):

com
 +- example
     +- myproject
         +- Application.java
         |
         +- bean
         |   +- Customer.java
         |   +- CustomerRepository.java
         |
         +- service
         |   +- CustomerService.java
         |
         +- controller
             +- CustomerController.java

5.运行启动程序

现在运行Application.java文件,就已经可以启动Spring Boot程序了,并且现在直接可以在浏览器访问127.0.0.1:8080,返回了Hello World!

这里只所以可以直接通过浏览器访问,那是因为,我们导入的启动器spring-boot-starter-web,直接把tomcat嵌入到了Spring Boot中 在引入的包中,你可以看到这几个文件: -w389

6.其他方式启动Spring Boot项目

其实我们在开发过程中,最常使用的还是直接main方法启动最方便,不过,你可能还会看到下面的这两种启动方式。有时候在部署阶段,这两种方式还是比较方便的。 使用其他两种方式之前,最好在你的POM.xml文件中加入下面的代码:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>
mvn spring-boot:run

在项目目录下直接执行mvn spring-boot:run这句代码,就可以运行起你的Spring Boot项目 -w760

mvn package

将工程打为jar包,再通过jar包运行 在工程目录下运行:

mvn package

会在工程的target文件夹中,生成一个(项目名-0.0.1-SNAPSHOT.jar)的jar包,这样,我们就可以通过java命令的运行这个jar包 -w662

java -jar springboot-test-0.0.1-SNAPSHOT.jar

本文链接:http://www.yanhongzhi.com/post/springboot-detail.html

-- EOF --

Comments