Spring基础:快速入门spring boot(2):SPRING INITIALIZR

原创 2016年12月03日 08:59:24

SPRING INITIALIZR是spring boot在构建项目时候非常有效, 虽然说Maven以及Spring boot提供的starter使用起来非常简单, 但是由于组件和关联部分众多,有这样一个可视化的配置构建管理工具仍然很不错. 在这篇文章中我们将会在IntelliJ IDEA中利用SPRING INITIALIZR来创建一个Hello World的例子程序, 不包括Maven下载的速度的话, 1分钟应该够了.

这里写图片描述

创建一个SPRING INITIALIZR项目

使用IntelliJ IDEA创建一个SPRING INITIALIZR类型的项目,除了选择web设定之外,一切全部Default。
这里写图片描述

选择Web
这里写图片描述
如果没有IntelliJ使用STS创建Starter类型的也是一样方便。二者都没有可以使用如下连接生成一个初始的项目zip包都是可以的。

URL https://start.spring.io/

这里写图片描述

项目详细

创建之后安静地等待Maven把所有的依赖全部下载下来。抽空看一下创建的内容。
这里写图片描述
可以看到,右侧代码区加亮部分正是SpringBoot的入口调用。
而左侧下方则是Maven辛辛苦苦替我们下载的内容。

Pom文件

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>demo</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>demo</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.4.2.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

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

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

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


</project>

可以在的pendency中清楚地看到我们加入的Web部分。

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

修改DemoApplication

加入如下两行内容

    @RequestMapping("/")
    public String Hello(){
        return "Hello, Spring Boot...";
    }

同时对DemoApplication加上RestController注解,修改后的source如下

package com.example;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@SpringBootApplication
public class DemoApplication {
    @RequestMapping("/")
    public String Hello(){
        return "Hello, Spring Boot...";
    }
    public static void main(String[] args) {
        SpringApplication.run(DemoApplication.class, args);
    }
}

运行

右键运行即可
这里写图片描述

结果确认

运行起来后就可以在浏览器中查看结果了
这里写图片描述

Console输出


  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v1.4.2.RELEASE)

2016-12-03 08:57:58.888  INFO 5128 --- [           main] com.example.DemoApplication              : Starting DemoApplication on vcc-PC with PID 5128 (C:\Users\Administrator\IdeaProjects\demo\target\classes started by Administrator in C:\Users\Administrator\IdeaProjects\demo)
2016-12-03 08:57:58.891  INFO 5128 --- [           main] com.example.DemoApplication              : No active profile set, falling back to default profiles: default
2016-12-03 08:57:58.949  INFO 5128 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@30ee2816: startup date [Sat Dec 03 08:57:58 CST 2016]; root of context hierarchy
2016-12-03 08:58:00.512  INFO 5128 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2016-12-03 08:58:00.525  INFO 5128 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat
2016-12-03 08:58:00.526  INFO 5128 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.6
2016-12-03 08:58:00.624  INFO 5128 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2016-12-03 08:58:00.624  INFO 5128 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1678 ms
2016-12-03 08:58:00.740  INFO 5128 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]
2016-12-03 08:58:00.744  INFO 5128 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]
2016-12-03 08:58:00.744  INFO 5128 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2016-12-03 08:58:00.744  INFO 5128 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2016-12-03 08:58:00.744  INFO 5128 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]
2016-12-03 08:58:00.962  INFO 5128 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@30ee2816: startup date [Sat Dec 03 08:57:58 CST 2016]; root of context hierarchy
2016-12-03 08:58:01.018  INFO 5128 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto public java.lang.String com.example.DemoApplication.Hello()
2016-12-03 08:58:01.022  INFO 5128 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity<java.util.Map<java.lang.String, java.lang.Object>> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest)
2016-12-03 08:58:01.022  INFO 5128 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web.BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse)
2016-12-03 08:58:01.043  INFO 5128 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-12-03 08:58:01.043  INFO 5128 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-12-03 08:58:01.071  INFO 5128 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]
2016-12-03 08:58:01.174  INFO 5128 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2016-12-03 08:58:01.226  INFO 5128 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2016-12-03 08:58:01.230  INFO 5128 --- [           main] com.example.DemoApplication              : Started DemoApplication in 2.751 seconds (JVM running for 3.109)
2016-12-03 08:58:06.041  INFO 5128 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring FrameworkServlet 'dispatcherServlet'
2016-12-03 08:58:06.041  INFO 5128 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization started
2016-12-03 08:58:06.052  INFO 5128 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : FrameworkServlet 'dispatcherServlet': initialization completed in 11 ms
版权声明:本文为博主原创文章,未经博主允许欢迎转载,但请注明出处。

搭建自己的Spring Initializr服务器

搭建自己的Spring Initializr服务器作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs要开始一个基于Sprin...
  • chszs
  • chszs
  • 2016年06月19日 17:28
  • 15200

使用IntelliJ IDEA中的Spring Initializr来快速构建Spring Boot/Cloud工程

我相信许多初学者都看了Spring Boot和Spring Cloud相关的博文中,都会涉及Spring Boot工程的创建的问题。而一般所看到的都是使用IntelliJ IDEA 工具来创建,并且方...
  • qq496013218
  • qq496013218
  • 2017年02月27日 11:43
  • 6416

IDEA新建项目时,没有Spring Initializr选项

最近开始使用IDEA作为开发工具,然后也是打算开始学习使用spring boot。 看着博客来进行操作上手spring boot,很多都是说 创建一个新项目(Create New Projec...
  • u012860950
  • u012860950
  • 2017年07月26日 14:22
  • 10140

深入学习微框架:Spring Boot

转载于:http://www.infoq.com/cn/articles/microframeworks1-spring-boot spring-boot是由Pivotal团队提供的...
  • zgmzyr
  • zgmzyr
  • 2015年11月14日 17:14
  • 139581

使用IntelliJ IDEA创建SpringMVC项目

1.说明 IntelliJIDEA 是一款非常流行的编译软件,在Java发展领域里,可是说这款软件也是很盛行的。只是在国内,我们经常用的是Eclipse或MyEclipse。但是如果你用Eclips...
  • owen_william
  • owen_william
  • 2016年06月04日 23:38
  • 12929

利用Intellij Idea构建一个Spring Boot构建

前情提要: spring boot和springmvc相对比: 两者没什么关系,只是spring boot省略很多配置,算是springmvc的升级版,毕竟作为一个优秀的程序员不能总花一堆时间去搞...
  • eumenides_
  • eumenides_
  • 2017年02月12日 15:31
  • 10623

IntelliJ IDEA 2017.2.5 x64中的Spring Initializr来快速构建Spring Boot/Cloud工程

在我的上一篇博客中,选用了http://start.spring.io/创建工程 接下来使用IntelliJ IDEA 2017.2.5 x64创建Spring Boot/Cloud工程 新安装的...
  • zhaokejin521
  • zhaokejin521
  • 2017年11月04日 19:21
  • 679

SpringBoot Quickstart

SpringBoot Intro SpringBoot是顺应现在微服务(MicroServices)理念而产生的一个微框架(同类微框架可供选择的还有Dropwizard), 用来构建基于Sp...
  • xiaoyu411502
  • xiaoyu411502
  • 2016年07月17日 00:43
  • 1705

IDEA15.4 以Spring Initializr形式 搭建springboot 项目

未测试过最新版本的IDEA的Spring Initializr内容是否更为丰富?     Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始...
  • jiang1245764446
  • jiang1245764446
  • 2017年07月27日 10:43
  • 1253

【教她写代码】使用Intellij创建第一个Springboot程序

首先先介绍一下Springboot:Spring是Java开发中,十分著名的一个框架。但是该框架的使用必须结合大量的XML配置文件,这一点让开发人员痛苦无比。Springboot是Spring官方重新...
  • yxl8359026
  • yxl8359026
  • 2016年05月20日 19:24
  • 59578
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring基础:快速入门spring boot(2):SPRING INITIALIZR
举报原因:
原因补充:

(最多只允许输入30个字)