使用没有父POM的Spring Boot

作者:澳门娱乐

springboot飞速搭建,springboot搭建

环境

spring-boot-starter-parent 是二个特有的starter,它提供了卓有效率的Maven暗中认可设置。同不时候,它也提供了三个dependency-management 节点,那样对于”blessed“依赖你能够简单version标志;spring-boot-starter-parent 自个儿并未提供重视

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.3.0.BUILD-SNAPSHOT</version>
</parent>

Maven顾客能够继续 spring-boot-starter-parent 项目来得到合适的暗中同意设置。该父项目提供以下特点:

  • 暗中认可编写翻译等级为Java 1.6
  • 源码编码为UTF-8
  • 贰个依赖管理节点,允许你省略普通讯赖的 <version> 标签,承继自 spring-boot-dependencies POM。
  • 确切的财富过滤
  • 适度的插件配置(exec插件,surefire,Git commit ID,shade)
  • 本着 application.properties 和 application.yml 的能源过滤

注:你应当只需求在该信任上点名Spring Boot版本。如果导入别的的starters,你能够放心的简易版本号。

 

使用未有父POM的Spring Boot

 

不是各样人都赏识承接 spring-boot-starter-parent POM。你也许须求选用公司专门的事业parent,或你或然协理于显式评释全体Maven配置。
如果你不行使 spring-boot-starter-parent ,通过利用多个 scope=import 的信赖,你还是能博获得依附管理的平价:

<dependencyManagement>
    <dependencies>
        <dependency>
        <!-- Import dependency management from Spring Boot -->
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-dependencies</artifactId>
            <version>1.3.0.BUILD-SNAPSHOT</version>
            <type>pom</type>
            <scope>import</scope>
        </dependency>
    </dependencies>
</dependencyManagement>

 

改变Java版本

spring-boot-starter-parent 选用非常保守的Java兼容计策。假如你遵照大家的建议,使用最新的Java版本,你能够增进三个java.version 属性:

<properties>
        <java.version>1.8</java.version>
</properties>    

 

任何的”Starter POMs“轻易的提供信赖,那一个重视大概是你付出特定项目标应用时索要的。由李晓明在开垦三个web应用,大家将增多四个spring-boot-starter-web 重视;要是借助spring-boot-starter-parent父工程,版本号能够简轻便单

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>1.3.5.RELEASE</version>
</dependency>

编写代码

为了形成应用程序,大家供给创建一个单独的Java文件。Maven暗中同意会编写翻译src/main/java 下的源码,所以您要求创设那样的文书结构,然后增添三个名为src/main/java/Example.java 的文本:

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.stereotype.*;
import org.springframework.web.bind.annotation.*;
@RestController
@EnableAutoConfiguration
public class Example {
    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
    public static void main(String[] args) throws Exception {
        SpringApplication.run(Example.class, args);
    }
}

使用"default"包

当类未有包括 package 注脚时,它被感觉处于 default package 下。平时不引进应用 default package ,并理应幸免采取它。因为对于利用 @ComponentScan , @EntityScan 或 @SpringBootApplication 评释的Spring Boot应用来讲,来自各种jar的类都会被读取,那会招致一定的难题。
注:大家提出你遵守Java推荐的包命名典型,使用贰个反转的域名(举个例子com.example.project )

定位main应用类

大家冷眼阅览建议您将main应用类放在位于其余类方面包车型地铁根包(root package)中。平日采用 @EnableAutoConfiguration 评释你的main类,况且暗地里为有些项定义了三个基础“search package”。举例,若是您正在编纂一个JPA应用,@EnableAutoConfiguration 注明的类所在包将被用来搜寻 @Entity 项。

动用根包允许你选用 @ComponentScan 注明而没有必要定义多少个 basePackage 属性。假设main类位于根包中,你也得以应用 @SpringBootApplication 评释。

图片 1

 

运营事例

我们的应用程序最终部分是main方法。这只是叁个专门的学问的章程,它服从Java对于一个应用程序入口点的预订。大家的main方法通过调用run,将专门的职业委托给了Spring Boot的SpringApplication类。SpringApplication将教导大家的行使,运行Spring,相应地开发银行被活动配置的汤姆cat web服务器。大家需求将 Example.class 作为参数字传送递给run方法来告诉SpringApplication谁是主要的Spring组件。为了揭破任何的命令行参数,args数组也会被传送过去。

图片 2

假使运用二个浏览器打开

Hello World!

 

意况spring-boot-starter-parent 是一个别开生面的starter,它提供了有效的Maven默许设置。同期,它也提供了一个depe...

本文由澳门娱乐6165发布,转载请注明来源

关键词: