Spring Boot 入门学习(1)
来源:互联网 发布:卓讯云客宝类似软件 编辑:程序博客网 时间:2024/06/10 07:38
简介
Spring官方网站本身使用Spring框架开发,随着功能以及业务逻辑的日益复杂,应用伴随着大量的XML配置文件以及复杂的Bean依赖关系。随着Spring 3.0的发布,Spring IO团队逐渐开始摆脱XML配置文件,并且在开发过程中大量使用“约定优先配置”(convention over configuration)的思想来摆脱Spring框架中各类繁复纷杂的配置(即时是Java Config)。
Spring Boot正是在这样的一个背景下被抽象出来的开发框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑。根据官网文档的描述,他的主要目标是
- 为所有的Spring开发提供一个从根本上更快的和广泛使用的入门经验
列表内容 - 开箱即用,但你可以通过不采用默认设置来摆脱这种方式 。
- 提供一系列大型项目常用的非功能性特征(比如,内嵌服务器,安全,指标,健康监测,外部化配置)。
- 绝对不需要代码生成及xml配置
入门实例
创建一个maven的项目
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.3.5.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies>
通过mvn dependency:tree 命令以树形的结构查看项目的依赖情况,其中已经包含了tomcat web服务器以及Spring boot自身
编写一个类包含处理HTTP请求的方法以及一个main()函数:
@RestController@EnableAutoConfigurationpublic class HelloWorldController { @RequestMapping(value = "helloWorld") public String helloWorld(){ return "hello world"; } public static void main(String[] args) { SpringApplication.run(HelloWorldController.class,args); }}
启动main函数后,在控制台中可以发现启动了一个Tomcat容器,一个基于Spring MVC的应用也同时启动起来,这时访问http://localhost:8080就可以看到Hello World出现在浏览器中了。
@RestController与@RequestMapping注解是Spring MVC的常用注解。
@RestController
@Target(value=TYPE) @Retention(value=RUNTIME) @Documented @Controller @ResponseBody public @interface RestController
@RestController,它继承自@Controller注解,是spring 4.0引入的。查看源码可知其包含了 @Controller 和 @ResponseBody 注解。专门为响应内容式的 Controller 而设计的,可以直接响应对象为JSON(RestController下面的action返回都默认为ResponseBody)。 而 @Controller 用来响应页面
@EnableAutoConfiguration注解
这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto-configuration将假定你正在开发一个web应用并相应地对Spring进行设置。
Starter POMs和Auto-Configuration:设计auto-configuration的目的是更好的使用”Starter POMs”,但这两个概念没有直接的联系。你可以自由地挑选starter POMs以外的jar依赖,并且Spring Boot将仍旧尽最大努力去自动配置你的应用。
main()方法
main方法通过调用run,将业务委托给了Spring Boot的SpringApplication类。SpringApplication将引导我们的应用,启动Spring,相应地启动被自动配置的Tomcat web服务器。我们需要将Example.class作为参数传递给run方法来告诉SpringApplication谁是主要的Spring组件。为了暴露任何的命令行参数,args数组也会被传递过去。
同样的,因为是个maven项目,我们也可以通过mvn spring-boot:run来启动应用。
- Spring Boot 入门学习(1)
- spring boot 入门学习
- spring boot 入门学习
- spring boot入门学习
- Spring Boot入门学习
- Spring-Boot学习(1)-----Spring-Boot入门
- spring boot的入门学习
- SPRING-BOOT入门学习记录
- 《spring-boot学习》-03-入门
- spring-boot入门学习笔记
- spring-boot入门学习笔记
- Spring boot简单入门学习
- spring boot学习 初级入门
- spring boot 入门 1
- spring boot入门-1
- [Spring入门学习笔记][Spring Boot]
- Spring Boot学习总结(1)——Spring Boot入门
- spring boot框架学习1-认识spring boot和快速入门
- Flink中的一些核心概念
- Cat 安装(二)
- Android 一个小例子理解实际开发中坐标计算的过程
- 途牛原创|大话权限中心的PHP架构之道
- 使用nginx搭建http代理服务器
- Spring Boot 入门学习(1)
- 排序+自己保存在路径里
- 选择排序1到10000
- 深入理解Java:注解(Annotation)自定义注解入门
- 欢迎使用CSDN-markdown编辑器
- 利用HttpClient的POST方式发起带参数的请求时,点击注册按钮无反应状态分析
- python socket编程
- python学习总结(一)
- 选择排序法——1到10