文档章节

Spring boot入门一 环境搭建HelloWorld

architect刘源源
 architect刘源源
发布于 2018/02/12 10:28
字数 1133
阅读 44
收藏 5

说在前面:  

最近Spring boot也火了一把,不稍微熟习下Spring boot都不好意思出门了,于是我也试着看下Spring boot的相关配置。

概述:

  Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。一句话概括,“spring boot它就是一些人为了快速配置一套系统框架而进行的封装,里面根据各种类型的项目功能封装了各种模块框架的引用,广大老百姓在使用的时候就不需要一一的去添加具体非常细的引用了,只需要添加他们封装好的spring boot相关模块插件即可”。spring boot其实不是什么新的框架,就如同一个盒子,盒子里面装了很多的细致的jar,我们只要引用这个盒子就可以实现各种框架引用与搭建了!

 

配置工具:

1、JDK1.7

2、Maven(也可以使用非maven工具搭建)

3、IDE(Eclipse、IntelliJ 或者其它的)

 

代码配置:

1、新建一个maven项目,可以是web工程也可以是java基本工程

 

2、pom.xml中配置

 

[html] view plain copy

 print?

  1. <parent>  
  2.     <groupId>org.springframework.boot</groupId>  
  3.     <artifactId>spring-boot-starter-parent</artifactId>  
  4.     <version>1.4.0.RELEASE</version>  
  5. </parent>  
  6.   
  7. <dependencies>  
  8.     <dependency>  
  9.         <groupId>org.springframework.boot</groupId>  
  10.         <artifactId>spring-boot-starter-web</artifactId>  
  11.     </dependency>  
  12. </dependencies>  

 

 

 

3、新建个java类

 

[html] view plain copy

 print?

  1. import org.springframework.boot.SpringApplication;  
  2. import org.springframework.boot.autoconfigure.EnableAutoConfiguration;  
  3. import org.springframework.stereotype.Controller;  
  4. import org.springframework.web.bind.annotation.RequestMapping;  
  5. import org.springframework.web.bind.annotation.ResponseBody;  
  6.   
  7. @Controller  
  8. @EnableAutoConfiguration  
  9. public class SampleController {  
  10.   
  11.     @RequestMapping("/")  
  12.     @ResponseBody  
  13.     String home() {  
  14.         return "Hello World!";  
  15.     }  
  16.   
  17.     public static void main(String[] args) throws Exception {  
  18.         SpringApplication.run(SampleController.class, args);  
  19.     }  
  20. }  


 

 

好了以上配置完成,已经完成了spring boot最最简单的配置,

运行该main方法

 

[html] view plain copy

 print?

  1.   .   ____          _            __ _ _  
  2.  /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \  
  3. ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \  
  4.  \\/  ___)| |_)| | | | | || (_| |  ) ) ) )  
  5.   '  |____| .__|_| |_|_| |_\__, | / / / /  
  6.  =========|_|==============|___/=/_/_/_/  
  7.  :: Spring Boot ::        (v1.4.0.RELEASE)  
  8.   
  9. 2017-08-30 16:05:10.511  INFO 5180 --- [           main] c.s.project.controller.SampleController  : Starting SampleController on lenovo2017 with PID 5180 (E:\Eclipse4_WorkPlace\spring_boot\spring_boot_first\target\classes started by lenovo in E:\Eclipse4_WorkPlace\spring_boot\spring_boot_first)  
  10. 2017-08-30 16:05:10.512  INFO 5180 --- [           main] c.s.project.controller.SampleController  : No active profile set, falling back to default profiles: default  
  11. 2017-08-30 16:05:10.540  INFO 5180 --- [           main] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@1b4e829: startup date [Wed Aug 30 16:05:10 CST 2017]; root of context hierarchy  
  12. 2017-08-30 16:05:11.371  INFO 5180 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)  
  13. 2017-08-30 16:05:11.378  INFO 5180 --- [           main] o.apache.catalina.core.StandardService   : Starting service Tomcat  
  14. 2017-08-30 16:05:11.379  INFO 5180 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet Engine: Apache Tomcat/8.5.4  
  15. 2017-08-30 16:05:11.441  INFO 5180 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/aaa]    : Initializing Spring embedded WebApplicationContext  
  16. 2017-08-30 16:05:11.441  INFO 5180 --- [ost-startStop-1] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 902 ms  
  17. 2017-08-30 16:05:11.554  INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean  : Mapping servlet: 'dispatcherServlet' to [/]  
  18. 2017-08-30 16:05:11.557  INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'characterEncodingFilter' to: [/*]  
  19. 2017-08-30 16:05:11.557  INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]  
  20. 2017-08-30 16:05:11.558  INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'httpPutFormContentFilter' to: [/*]  
  21. 2017-08-30 16:05:11.558  INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean   : Mapping filter: 'requestContextFilter' to: [/*]  
  22. 2017-08-30 16:05:12.066  INFO 5180 --- [ost-startStop-1] o.a.c.util.SessionIdGeneratorBase        : Creation of SecureRandom instance for session ID generation using [SHA1PRNG] took [495] milliseconds.  
  23. 2017-08-30 16:05:12.301  INFO 5180 --- [           main] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@1b4e829: startup date [Wed Aug 30 16:05:10 CST 2017]; root of context hierarchy  
  24. 2017-08-30 16:05:12.346  INFO 5180 --- [           main] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto java.lang.String com.sam.project.controller.SampleController.home()  
  25. 2017-08-30 16:05:12.351  INFO 5180 --- [           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)  
  26. 2017-08-30 16:05:12.352  INFO 5180 --- [           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)  
  27. 2017-08-30 16:05:12.370  INFO 5180 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]  
  28. 2017-08-30 16:05:12.370  INFO 5180 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]  
  29. 2017-08-30 16:05:12.397  INFO 5180 --- [           main] o.s.w.s.handler.SimpleUrlHandlerMapping  : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler]  
  30. 2017-08-30 16:05:12.486  INFO 5180 --- [           main] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup  
  31. 2017-08-30 16:05:12.530  INFO 5180 --- [           main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)  
  32. 2017-08-30 16:05:12.532  INFO 5180 --- [           main] c.s.project.controller.SampleController  : Started SampleController in 2.398 seconds (JVM running for 2.642)  


 

 

可以看到上面打印了各种信息,表示启动成功!

 

浏览器访问

http://localhost:8080/

 

即可看到输出hello world信息!

 

相关说明:

 

@EnableAutoConfiguration 和 SpringApplication 。

1、@EnableAutoConfiguration 用于自动配置。它会根据你的pom配置(实际上应该是根据具体的依赖)来判断这是一个什么应用,并创建相应的环境。

在上面这个例子中,@EnableAutoConfiguration 会判断出这是一个web应用,所以会创建相应的web环境。

 

2、SpringApplication 则是用于从main方法启动Spring应用的类。默认,它会执行以下步骤:

  1. 创建一个合适的ApplicationContext实例 (取决于classpath)。
  2. 注册一个CommandLinePropertySource,以便将命令行参数作为Spring properties。
  3. 刷新application context,加载所有单例beans。
  4. 激活所有CommandLineRunner beans。

 

 

至此,一个入门简单的spring boot创建完成。

© 著作权归作者所有

architect刘源源

architect刘源源

粉丝 164
博文 518
码字总数 922746
作品 0
浦东
程序员
私信 提问
Spring Boot [Hello World]

导读: 通过上篇文章, 我们已经了解到了 Spring Boot 作为一个Spring的脚手架, 其核心思想便是约定大于配置,通过一层层的封装让我们可以在最短的时间内搭建一个web项目,从繁琐的配置中走...

yangrd
2018/08/27
0
0
SpringBoot初探——HelloWorld

SpringBoot初探——HelloWorld 一、什么是Spring Boot   Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来...

Qiu_CJ
2018/07/18
0
0
Spring Boot 《一》开发一个“HelloWorld”的 web 应用

一,Spring Boot 介绍 Spring Boot不是一个新的框架,默认配置了多种框架使用方式,使用SpringBoot很容易创建一个独立运行(运行jar,内嵌Servlet)、准生产级别的基于Spring框架的项目,它可...

终端研发部
07/02
0
0
企业级开发基础框架 SLife 1.0 加入 Spring Boot Admin 监控

企业级开发基础框架 SLife 1.0 已发布。SLife 是使用 Spring Boot 搭建的一个企业级快速开发脚手架。SLife 的目的是帮助初学者入门Spring boot 并能快速了解 一个web框架的快速搭建。同时帮助...

jamen
2017/12/19
2.9K
3
Spring Boot入门(1)Hello World

Spring Boot介绍   对于熟悉Spring的读者读者来说,想必也听说过Spring Boot的大名,Spring Boot旨在简化Spring的开发,它涉及了Spring的方方面面,是一个令人惊叹的神奇发明。Spring Boot...

jclian91
2018/04/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

说说我当初是如何学Linux的

今天我就说说我当初是如何从一名普通桌面维护工程师,通过学习和努力转成Linux运维工程师的,以及作为Linux运维工程师需要一些什么技能和知识,希望可以帮到一些对Linux有兴趣或者想往Linux...

linuxCool
35分钟前
1
0
Springboot 2.1.5 配置JPA多数据源

最近在学springboot,照着网上博客想试着配一下Jpa的多数据源,但发现因为springboot版本太高的问题,网上的demo都不适用,导致找了很久才找到解决办法。现在把操作过程记录如下。 一、yml配...

陈年之后是青葱
40分钟前
9
0
Scala基础 - 下划线使用指南

下划线这个符号几乎贯穿了任何一本Scala编程书籍,并且在不同的场景下具有不同的含义,绕晕了不少初学者。正因如此,下划线这个特殊符号无形中增加Scala的入门难度。 1. 用于替换Java的等价语...

细肉云吞
49分钟前
1
0
初始化一个vue项目

vue init webpack ”项目名称“ 第一步安装node 第二步项目初始化 1.安装vue-cli cnpm install vue-cli -g //全局安装 vue-cli 2、创建文件夹 3、在文件夹下执行 vue init webpack ”...

cupid_ly
今天
1
0
Leetcode PHP题解--D106 997. Find the Town Judge

D106 997. Find the Town Judge 题目链接 997. Find the Town Judge 题目分析 给定一个数组N代表人数,和给定一个数组,每个元素为一个只有两个值(a,b)的数组。 代表a信任b。 从中找到一个b...

skys215
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部