Spring boot入门一 环境搭建HelloWorld
说在前面:
最近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中配置
<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.4.0.RELEASE</version></parent><dependencies><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency></dependencies>
3、新建个java类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.EnableAutoConfiguration;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;@Controller
@EnableAutoConfiguration
public class SampleController {@RequestMapping("/")@ResponseBodyString home() {return "Hello World!";}public static void main(String[] args) throws Exception {SpringApplication.run(SampleController.class, args);}
}
好了以上配置完成,已经完成了spring boot最最简单的配置,
运行该main方法
. ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot :: (v1.4.0.RELEASE)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)
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
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
2017-08-30 16:05:11.371 INFO 5180 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2017-08-30 16:05:11.378 INFO 5180 --- [ main] o.apache.catalina.core.StandardService : Starting service Tomcat
2017-08-30 16:05:11.379 INFO 5180 --- [ main] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.4
2017-08-30 16:05:11.441 INFO 5180 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/aaa] : Initializing Spring embedded WebApplicationContext
2017-08-30 16:05:11.441 INFO 5180 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 902 ms
2017-08-30 16:05:11.554 INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2017-08-30 16:05:11.557 INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2017-08-30 16:05:11.557 INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2017-08-30 16:05:11.558 INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2017-08-30 16:05:11.558 INFO 5180 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
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.
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
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()
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)
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)
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]
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]
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]
2017-08-30 16:05:12.486 INFO 5180 --- [ main] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup
2017-08-30 16:05:12.530 INFO 5180 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
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应用的类。默认,它会执行以下步骤:
- 创建一个合适的ApplicationContext实例 (取决于classpath)。
- 注册一个CommandLinePropertySource,以便将命令行参数作为Spring properties。
- 刷新application context,加载所有单例beans。
- 激活所有CommandLineRunner beans。
至此,一个入门简单的spring boot创建完成。
Spring boot入门一 环境搭建HelloWorld相关推荐
- spring boot+mybatis框架环境搭建
配置spring boot+mybatis框架环境搭建 一, spring boot 环境搭建 以下步骤为 1,新建maven工程 2.在pom文件中添加: spring-boot-starter-p ...
- 从零搭建一个 Spring Boot 开发环境!Spring Boot+Mybatis+Swagger2 环境搭建
从零搭建一个 Spring Boot 开发环境!Spring Boot+Mybatis+Swagger2 环境搭建 本文简介 为什么使用Spring Boot 搭建怎样一个环境 开发环境 导入快速启动 ...
- 【Spring Cloud 基础设施搭建系列】Spring Cloud Demo项目 Spring Boot Test集成测试环境搭建
文章目录 集成测试 @SpringBootTest的集成测试 Spring Boot Test集成测试环境搭建 参考 源代码 集成测试 集成测试(Integration Testing,缩写为INT) ...
- Spring boot集成spring-boot-starter-data-jpa环境搭建
1.创建Spring boot项目 2.保存等待构建完成 3.增加spring-boot-starter-data-jpa.内存数据库依赖包hsqldb <!-- 添加data jpa依赖 -- ...
- spring boot入门小案例
spring boot 入门小案例搭建 (1) 在Eclipse中新建一个maven project项目,目录结构如下所示: cn.com.rxyb中存放spring boot的启动类,applica ...
- 普歌-云言团队-Spring Boot入门:环境搭建Spring Boot HelloWorld
Spring Boot入门:环境搭建Spring Boot HelloWorld 前言:SpringBoot 是来简化Spring应用开发, 约定大于配置, 去繁从简, just run就能创建一个独 ...
- Spring Boot 入门
一.Spring Boot 入门 1.Spring Boot 简介 简化Spring应用开发的一个框架: 整个Spring技术栈的一个大整合: J2EE开发的一站式解决方案: 2.微服务 2014,m ...
- Spring Boot 入门(五):集成 AOP 进行日志管理
本篇文章是接着 Spring boot 入门(四):集成 Shiro 实现登陆认证和权限管理写的,按照前面几篇博客的教程,可以搭建一个简单的项目,主要包含了 Pagehelper+MyBatis 分页 ...
- eclipse android开发环境搭建_聊聊Spring boot2.X开发环境搭建和基本开发
对Spring Boot的开发环境进行搭建,并对它的特点做进一步的了解,才能更好地对Spring Boot有更深入的介绍.但是无论如何都需要先来搭建Spring Boot的工程. 搭建Spring B ...
最新文章
- C#读写文件:编码和转换(string和byte[]转换为例)
- tensorflow中sess.run第一个参数衣服不能随便穿
- [OJ] Wildcard Matching (Hard)
- linux 下执行.sh文件总是提示permission denied
- Linux修改开机启动logo
- 获取字段_数据库中敏感字段的标记、标示
- dell笔记本外接显示器_使用笔记本电脑外接大屏幕液晶显示器的体验
- C++多态虚函数/纯虚函数demo
- OpenSource.com 评出 2014 年十佳开源软件
- 水经注万能地图下载器的自定义瓦片导出功能
- coreldraw16开三折页_cdr印刷设计排版教程,教你三折页设计制作方法
- 去除马赛克,有办法了 附运行教程
- 计算机主机当机是什么意思,宕机什么意思_宕机是什么意思?_宕机的意思_电脑宕机是什么意思...
- Linux系统U盘怎么格式化,Linux下对U盘的分区与格式化
- [bzoj4796][CERC2016]Key Knocking_乱搞
- 读取OSGB数据的几种方式
- 东方通 -- 如何安装、启动、停止、卸载东方通中间件
- 关于网站域名备案流程
- SwiftUI mutating 是什么怎么用 (2020年教程)
- 动态图 vs 静态图