SpringBoot之基礎入門-專題一

SpringBoot之基礎入門-專題一

1、Spring介紹

1.一、SpringBoot簡介

在初次學習Spring整合各個第三方框架構建項目的時候,每每會有一大堆的XML文件的配置,衆多的dtd或者schema約束,資源文件的管理也是很凌亂,並且還有個更蛋疼的地方就是版本的迭代問題,而且tomcat的啓動加載速度真的10s等的難受。SpringBoot 是一個快速開發的框架,可以快速的整合第三方框架,簡化XML配置,所有采用註解形式,內置Tomcat容器,幫助開發者可以實現快速開發,SpringBoot的Web組件 默認集成的是SpringMVC框架。Spring Boot讓咱們的Spring應用變的更輕量化。好比:你能夠僅僅依靠一個Java類來運行一個Spring引用。你也能夠打包你的應用爲jar並經過使用java -jar來運行你的Spring Web應用。java

Spring Boot的主要優勢:

爲全部Spring開發者更快的入門web

開箱即用,提供各類默認配置來簡化項目配置spring

內嵌式容器簡化Web項目apache

沒有冗餘代碼生成和XML配置的要求瀏覽器

本章主要目標完成Spring Boot基礎項目的構建,而且實現一個簡單的Http請求處理,經過這個例子對Spring Boot有一個初步的瞭解,並體驗其結構簡單、開發快速的特性。tomcat

1.二、系統要求:

JavaJDK1.8及以上springboot

Spring Framework 4.1.5及以上架構

Eclipseapp

本文采用Java JDK 1.八、Spring Boot 2.0版本調試經過。框架

1.三、SpringBoot和SpringMVC區別

SpringBoot 是一個快速開發的框架,可以快速的整合第三方框架,簡化XML配置,所有采用註解形式,內置Tomcat容器,幫助開發者可以實現快速開發,SpringBoot的Web組件 默認集成的是SpringMVC框架。

SpringMVC是控制層。

1.四、SpringBoot和SpringCloud區別

SpringBoot 是一個快速開發的框架,可以快速的整合第三方框架,簡化XML配置,所有采用註解形式,內置Tomcat容器,幫助開發者可以實現快速開發,SpringBoot的Web組件 默認集成的是SpringMVC框架。

SpringMVC是控制層。

SpringCloud依賴與SpringBoot組件,使用SpringMVC編寫Http協議接口,同時SpringCloud是一套完整的微服務解決框架。

1.五、常見錯誤

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

2、快速入門

2.一、建立一個Maven工程

名爲」springboot-helloworld」 類型爲Jar工程項目

2.二、pom文件引入依賴

<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中運行的。)

2.三、編寫HelloWorld服務

建立package命名爲com.example.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);
	}
}

2.四、@RestController

在上加上RestController 表示修飾該Controller全部的方法返回JSON格式,直接能夠編寫

Restful接口

2.五、@EnableAutoConfiguration

註解:做用在於讓 Spring Boot 根據應用所聲明的依賴來對 Spring 框架進行自動配置

這個註解告訴Spring Boot根據添加的jar依賴猜想你想如何配置Spring。因爲spring-boot-starter-web添加了Tomcat和Spring MVC,因此auto-configuration將假定你正在開發一個web應用並相應地對Spring進行設置。

2.6 SpringApplication.run(HelloController.class, args);

標識爲啓動類

2.七、SpringBoot啓動方式1

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

2.八、SpringBoot啓動方式2

@ComponentScan(basePackages = 「com.example.controller」)—控制器掃包範圍

@ComponentScan(basePackages = "com.example.controller")
@EnableAutoConfiguration
public class App {
	public static void main(String[] args) {
		SpringApplication.run(App.class, args);
	}
}

2.九、SpringBoot啓動方式3

@SpringBootApplication

@SpringBootApplication
public class SpringBootApp {

	public static void main(String[] args) {
		SpringApplication.run(SpringBootDemoApp.class, args);
	}

}

@SpringBootApplication 被 @Configuration、@EnableAutoConfiguration、@ComponentScan 註解所修飾,換言之 Springboot 提供了統一的註解來替代以上三個註解

掃包範圍:在啓動類上加上@SpringBootApplication註解,當前包下或者子包下全部的類均可以掃到。

相關文章
相關標籤/搜索