SpringBootjava
在您第1次接触和学习Spring框架的时候,是否由于其繁杂的配置而退却了?在你第n次使用Spring框架的时候,是否以为一堆反复黏贴的配置有一些厌烦?那么您就不妨来试试使用Spring Boot来让你更易上手,更简单快捷地构建Spring应用!web
Spring Boot让咱们的Spring应用变的更轻量化。好比:你能够仅仅依靠一个Java类来运行一个Spring引用。你也能够打包你的应用为jar并经过使用java -jar来运行你的Spring Web应用。spring
Spring Boot的主要优势:apache
为全部Spring开发者更快的入门浏览器
开箱即用,提供各类默认配置来简化项目配置springboot
内嵌式容器简化Web项目app
没有冗余代码生成和XML配置的要求框架
本章主要目标完成Spring Boot基础项目的构建,而且实现一个简单的Http请求处理,经过这个例子对Spring Boot有一个初步的了解,并体验其结构简单、开发快速的特性。maven
SpringBoot 是一个快速开发的框架,可以快速的整合第三方框架,简化XML配置,所有采用注解形式,内置Tomcat容器,帮助开发者可以实现快速开发,SpringBoot的Web组件 默认集成的是SpringMVC框架。spring-boot
SpringMVC是控制层。
Java1.8及以上
Spring Framework 4.1.5及以上
本文采用Java 1.8.0_73、Spring Boot 2.0版本调试经过。
SpringBoot 是一个快速开发的框架,可以快速的整合第三方框架,简化XML配置,所有采用注解形式,内置Tomcat容器,帮助开发者可以实现快速开发,SpringBoot的Web组件 默认集成的是SpringMVC框架。
SpringMVC是控制层。
SpringBoot 是一个快速开发的框架,可以快速的整合第三方框架,简化XML配置,所有采用注解形式,内置Tomcat容器,帮助开发者可以实现快速开发,SpringBoot的Web组件 默认集成的是SpringMVC框架。
SpringMVC是控制层。
SpringCloud依赖与SpringBoot组件,使用SpringMVC编写Http协议接口,同时SpringCloud是一套完整的微服务解决框架。
Eclipse 下载SpringBoot2.0以上版本,pom文件报错解决办法
org.apache.maven.archiver.MavenArchiver.getManifest(org.apache.maven.project.MavenProject, org.apache.maven.archiver.MavenArchiveConfiguration)
相关网址: http://bbs.itmayiedu.com/article/1527749194015
名为”springboot-helloworld” 类型为Jar工程项目
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.0.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> |
spring-boot-starter-parent做用 在pom.xml中引入spring-boot-start-parent,spring官方的解释叫什么stater poms,它能够提供dependency management,也就是说依赖管理,引入之后在申明其它dependency的时候就不须要version了,后面能够看到。 spring-boot-starter-web做用 springweb 核心组件 spring-boot-maven-plugin做用 若是咱们要直接Main启动spring,那么如下plugin必需要添加,不然是没法启动的。若是使用maven 的spring-boot:run的话是不须要此配置的。(我在测试的时候,若是不配置下面的plugin也是直接在Main中运行的。)
|
建立package命名为com.itmayiedu.controller(根据实际状况修改)
建立HelloController类,内容以下
@RestController @EnableAutoConfiguration public class HelloController { @RequestMapping("/hello") public String index() { return "Hello World"; } public static void main(String[] args) { SpringApplication.run(HelloController.class, args); } } |
在上加上RestController 表示修饰该Controller全部的方法返回JSON格式,直接能够编写
Restful接口
注解:做用在于让 Spring Boot 根据应用所声明的依赖来对 Spring 框架进行自动配置
这个注解告诉Spring Boot根据添加的jar依赖猜想你想如何配置Spring。因为spring-boot-starter-web添加了Tomcat和Spring MVC,因此auto-configuration将假定你正在开发一个web应用并相应地对Spring进行设置。
标识为启动类
Springboot默认端口号为8080
@RestController @EnableAutoConfiguration public class HelloController { @RequestMapping("/hello") public String index() { return "Hello World"; } public static void main(String[] args) { SpringApplication.run(HelloController.class, args); } } |
启动主程序,打开浏览器访问http://localhost:8080/index,能够看到页面输出Hello World
@ComponentScan(basePackages = "com.itmayiedu.controller")---控制器扫包范围
@ComponentScan(basePackages = "com.itmayiedu.controller") @EnableAutoConfiguration public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } } |
@SpringBootApplication
@SpringBootApplication 被 @Configuration、@EnableAutoConfiguration、@ComponentScan 注解所修饰,换言之 Springboot 提供了统一的注解来替代以上三个注解
扫包范围:在启动类上加上@SpringBootApplication注解,当前包下或者子包下全部的类均可以扫到。