一.初識SpringBoot(入門級01)

剛開始知道Spring Boot的時候,只是大概知道它是一個更快更方便的工具。Spring Boot讓咱們的Spring應用變的更輕量化。好比:你能夠僅僅依靠一個Java類來運行一個Spring應用。你也能夠打包你的應用爲jar並經過使用java -jar來運行你的Spring Web應用。html

1.1 Spring Boot是什麼?

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

1.2 Spring Boot的主要優勢?

  1. 爲全部Spring開發者更快的入門
  2. 開箱即用,提供各類默認配置來簡化項目配置
  3. 內嵌式容器簡化Web項目
  4. 沒有冗餘代碼生成和XML配置的要求
    下面就讓咱們來完成Spring Boot基礎項目的構建,而且實現一個簡單的Http請求處理,經過這個例子對Spring Boot有一個初步的瞭解,並體驗其結構簡單、開發快速的特性。

1.3 系統要求:

Java1.8及以上
Spring Framework 4.1.5及以上
Spring Boot 2.0java

1.4.SpringBoot和SpringMVC區別:

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

1.5.SpringBoot和SpringCloud區別:

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

2.1.建立一個Maven工程

名爲」springboot」 類型爲Jar工程項目。json

2.2.引入pom依賴文件


<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
</dependency>
2.0.0.RELEASE
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>後端


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.3.編寫helloword服務

建立HelloController類,內容以下:springboot

@RestControllerbr/>@EnableAutoConfiguration
public class HelloController {app

@RequestMapping("/hello")
 public String index() {
     return "Hello World";
 }

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

}

2.4.@RestController

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

2.5.@EnableAutoConfiguration

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

2.6.SpringApplication啓動類

SpringApplication.run(HelloController.class, args);
標識爲啓動類

2.7.SpringBoot啓動方式1

啓動主程序,打開瀏覽器訪問http://localhost:8080/index
能夠看到頁面輸出Hello World

2.8.SpringBoot啓動方式2

---- 控制器掃包範圍
@ComponentScan(basePackages = "com.guahao.controller")

@EnableAutoConfiguration
public class App {

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

}

2.9.SpringBoot啓動方式3------@SpringBootApplication

@SpringBootApplication 被 @Configuration、@EnableAutoConfiguration、@ComponentScan 註解所修飾,換言之 Springboot 提供了統一的註解來替代以上三個註解
掃包範圍:在啓動類上加上@SpringBootApplication註解,當前包下或者子包下全部的類均可以掃到。

3.1.渲染Web頁面

在以前的示例中,咱們都是經過@RestController來處理請求,因此返回的內容爲json對象。那麼若是須要渲染html頁面的時候,要如何實現呢?--模板引擎--在動態HTML實現上Spring Boot依然能夠完美勝任,而且提供了多種模板引擎的默認配置支持,因此在推薦的模板引擎下,咱們能夠很快的上手開發動態網站。
Spring Boot提供了默認配置的模板引擎主要有如下幾種:
• Thymeleaf
• FreeMarker
• Velocity
• Groovy
• Mustache
Spring Boot建議使用這些模板引擎,避免使用JSP,若必定要使用JSP將沒法實現Spring Boot的多種特性,具體可見後文:支持JSP的配置
當你使用上述模板引擎中的任何一個,它們默認的模板配置路徑爲:src/main/resources/templates。固然也能夠修改這個路徑,具體如何修改,可在後續各模板引擎的配置屬性中查詢並修改。

3.2.使用Freemarker模板引擎渲染web視圖,首先引入pom文件

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-freemarker</artifactId>
</dependency>

3.3.後端代碼

在src/main/resources/建立一個templates文件夾,後綴爲*.ftl。

@RequestMapping("/index")
public String index(Map map) {
map.put("name","美麗的天使...");
return "index";
}

3.4.前端代碼

<!DOCTYPE html><html><head lang="en"><meta charset="UTF-8" /><title></title></head><body>${name}</body> </html>

相關文章
相關標籤/搜索