美文网首页程序员
创建你的第一个应用

创建你的第一个应用

作者: beeMonkey | 来源:发表于2018-04-30 14:48 被阅读0次

11.1 创建POM

我们需要通过创建一个Maven的pom.xml文件开始。它是一个用来构建项目的秘方。打开你喜欢的编辑器,并添加如下内容:

 <?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">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>myproject</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.0.1.RELEASE</version>
    </parent>
    <!-- Additional lines to be added here... -->
</project>

上述的列表能够让你有一个可行的构建。你可以通过运行mvn package(目前,你可以无视“jar will be empty - no content was marked for inclusion!”的警告)

在这节,你可以导入项目到IDE中(大部分现代的Java IDE都内置了对Maven的支持)

11.2 添加依赖

Spring Boot提供了一系列的Starters使你能添加jar包到classpath中。我们的应用已经在POM中的parent节点使用了spring-boot-starter-parent。它是一个特殊的starter,能够提供有用的Maven默认值。它同时也提供依赖管理,你就可以省略依赖的versions标签。

其他的Starters提供你在开发特殊种类应用所需的依赖。因为我们开发的是一个网页应用,所以添加了spring-boot-starter-web这个依赖。在此之前,我们可以通过运行以下的命令来查看目前的项目依赖

$ mvn dependency:tree
[INFO] com.example:myproject:jar:0.0.1-SNAPSHOT

命令mvn dependency:tree打印了一个树形的项目依赖。你可以看到spring-boot-web-starter它自身并不提供依赖。为了添加所需的依赖,编辑你的pom.xml并立即在parent节下面添加以下的依赖spring-boot-starter-web

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

如果你再次运行mvn dependency:tree的话,你可以看到一系列额外的依赖,包括Tomcat web服务器和Spring Boot

11.3 编写代码

为了完成我们的程序,我们需要创建一个Java文件。Maven默认从src/main/java中编译资源,所以你需要创建那样的文件目录结构然后添加一个名为src/main/java/Example.java的文件并包含以下代码:

import org.springframework.boot.*;
import org.springframework.boot.autoconfigure.*;
import org.springframework.web.bind.annotion.*;

@RestController
@EnableAutoConfiguration
public class Example{
          @RequestMapping("/")
          String home(){
                     return "Hello World";
          }

          public static void main(String[] args) throws Exception{
                        SpringApplication.run(Example.class,args)
            }
}

虽然这里没有很多的代码,但却发生很多我们看不到的事情,我们在不知不觉中经历了下一些节章节中重要的部分。

11.3.1 @RestController和@RequestMapping 注解

在我们的Example类中第一个注解就是@RestController.我们都知道它是一个固定的注解。它为阅读代码的人提供了暗示,对Spring来说这个类扮演了重要的角色。在这个例子中,我们的类是一个web @Controller ,所以在处理发起的web请求时,Spring就解析它们。

@ReqeustMapping注解提供了路由信息。它告诉Spring任何/路径的HTTP请求都应该被映射到home方法中。@RestController注解则告知Spring将字符串结果直接返回给请求者。

@RestController和@RequestMapping注解都是Spring MVC注解(它们并不是Spring Boot特有的)。详细信息请阅读MVC section中的Spring参考文档。

11.3.2 @EnableAutoConfiguration注解

第二个类级的注解就是@EnableAutoConfiguration。这个注解告知Spring Boot去“猜测”你想怎样配置Spring,基于你添加的jar依赖。由于spring-boot-starter-web添加了Tomcat和Spring MVC,自动配置则根据它假设你正在开发一个web程序

Starters和Auto-Configuration
自动配置是设计来搭配Starters更好工作的,但这两个概念并不是直接捆绑在一起的。你可以随心选择starters以外的jar依赖。Spring Boot照样能很好地自动配置你的应用。

11.3.3 main方法

关于我们应用的最后一部分是main方法,这就是应用入口的一个标准方法,它遵循Java的惯例。我们通过调用run将main方法委托给了SpringApplication类。SpringApplication启动我们的应用,开启Spring,相应地启动自动配置好的Tomcat web服务器。我们需要将Example.class作为一个参数传给run方法以告知SpringApplication哪个是基本的Spirng组件。通过args数组暴露任何的命令行参数。

相关文章

  • FrintJS应用思考

    引言 当你使用FrintJS实现功能时,首先会创建一个应用。 习惯上你创建的第一个应用称作根应用。 由于只能创建一...

  • Node.js(三)

    Node.js 创建第一个应用 在我们创建 Node.js 第一个 "Hello, World!" 应用前,让我们...

  • 你手动创建的第一个Android活动

    你手动创建的第一个Android活动 这周学习的是在Eclipse上创建第个应用,这个应用要包括三个步骤: 1、A...

  • Android训练课程(Android Training) -

    构建你的第一个应用(app) 欢迎来到安卓开发! 这个课程教你如何构建你的第一个应用。你讲会学到如何去创建一个安卓...

  • APICloud_Doc

    介绍 新手开发指南 创建第一个应用 根据提示完成第一个应用1.控制台创建native应用, 在代码栏获取代码分支信...

  • Kotlin 基本数据类型(三)

    Kotlin 基本数据类型(三) 上一次大家学会了创建你的第一个Kotlin应用 Kotlin 快速创建您的第一个...

  • 创建你的第一个应用

    11.1 创建POM 我们需要通过创建一个Maven的pom.xml文件开始。它是一个用来构建项目的秘方。打开你喜...

  • 2019-09-17: 三:Flutter创建第一个应用?

    三:Flutter创建第一个应用? 3.1:有两种方式创建flutter应用3.1.1: 通过终端打开终端、执行命...

  • django教程-part1

    创建你的第一个Django应用 让我们通过一个实例来学习。通过这个教程,我们将会带你过一遍创建一个基本的投票应用的...

  • 《高性能iOS应用开发》生命周期

    应用的生命周期 应用委托 AppDelegate 通常是应用创建的第一个对象,为应用提供环境变量。 应用启动 应用...

网友评论

    本文标题:创建你的第一个应用

    本文链接:https://www.haomeiwen.com/subject/vwsakftx.html