javascript
SpringBoot | 第一章:第一个SpringBoot应用
2019獨角獸企業重金招聘Python工程師標準>>>
SpringBoot | 第一章:第一個SpringBoot應用
springboot簡單介紹
概述
隨著動態語言的流行(Ruby、Groovy、Scala、Node.js),Java的開發顯得格外的笨重:繁多的配置、低下的開發效率、復雜的部署流程以及第三方技術集成難度大。
在上述環境下,Springboot應運而生。它使用"習慣優于配置"(項目中存在大量的配置,此外還內置一個習慣性的配置,讓你無須手動進行配置)的理念讓你的項目快速運行起來。使用springboot很容易創建一個獨立運行(運行jar,內嵌servlet容器)、準生產級別的基于Spring框架的項目,使用springboot你可以不用或者只需要很少的Spring配置。
Spring Boot 的核心功能
- 獨立運行的Spring項目
Spring Boot可以以jar包的形式獨立運行,運行一個Spring Boot項目只需要通過java -jar xx.jar。
- 內置Servlet容器
Spring Boot可選擇內嵌Tomcat、Jetty或者Undertow,這樣無須以war包形式部署。
- 提供starter簡化maven配置
Spring提供了一系列的starter pom來簡化maven依賴加載,例如:當你使用了spring-boot-starter-web時,會自動加入相關依賴,無需你手動一個一個的添加坐標依賴。
- 自動配置Spring
Spring Boot會根據在類路徑中的jar包、類,為jar包里的類自動配置Bean,這樣會極大地減少我們要使用的配置。當然,Spring Boot只是考慮了大多數的開發場景,并不是所有場景,若在實際開發中,我們需要自動配置bean,而Spring Boot沒有提供支持,則可以自定義自動配置。
- 無代碼生成和xml配置
Spring Boot的神奇的不是借助于代碼生成來實現的,而是通過條件注解來實現的,這是Spring 4.x提供的新特性,Spring 4.x提倡使用java配置和注解配置相結合,而Spring Boot不需要任何xml配置即可實現Sping Boot的所有配置。
優缺點
優點
缺點
工程搭建
使用的工具為:Spring Tool Suite(3.9.3.RELEASE) SpringBoot:1.5.14.RELEASE
Spring Tool Suite 下載地址:https://spring.io/tools/sts/all
創建項目
利用**Spring Initializr**進行快速創建項目
- 選擇Dashboard-->CREATE SPRING STARTER PROJECT進行創建項目,或者可以選擇file-->new-->Spring Starter Project,打開創建面板
第一種方式:
第二種方式:
- 出現創建面板,填寫項目信息
這里url建議直接填寫:https://start.spring.io(默認是http方式)
maven相關命名說明
- 選擇依賴包和版本
除此下載包時,可能會比較慢,建議替換成阿里云的maven鏡像
項目結構
- src-main-java-cn.lqdev.learning.springboot.chapter1#主函數,啟動類,運行它如果運行了 Tomcat、Jetty、Undertow 等容器-Chapter1Application -resouces#存放靜態資源 js/css/images 等- statics#存放 html 模板文件- templates#主要的配置文件,SpringBoot啟動時候會自動加載application.properties/bootstrap.properties - application.properties#測試文件存放目錄 -test# pom.xml 文件是Maven構建的基礎,里面包含了我們所依賴JAR和Plugin的信息 - pompom依賴
由于使用了Spring Initializr直接創建項目,相關依賴自動添加好了。
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>cn.lqdev.learning</groupId><artifactId>springboot-chapter1</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>chapter-1</name><description>Spring Boot | 第一章:第一個Springboot應用</description><!-- Springboot的版本,大家選擇時,應該選擇 RELEASE 版本 --><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>1.5.14.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version></properties><dependencies><!-- 內嵌了tomcat服務器,開發簡單的web應用,此依賴即可 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- 測試包 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>主入口
/*** 啟動類* @author oKong **/ @SpringBootApplication public class Chapter1Application {public static void main(String[] args) {SpringApplication.run(Chapter1Application.class, args);} }編寫controller
/*** 第一個springboot應用 * @author oKong**/ //@RestController = @Controller + @ResponseBody 默認直接返回json @RestController public class DemoController {@RequestMapping(value = "/demo", method = RequestMethod.GET)public String demo() {return "hello,SpringBoot!";} }啟動應用
直接Chapter1Application,右鍵 run as --> Spring Boot App 即可。
看見以下提示,說明啟動成功:
2018-07-11 22:47:38.170 INFO 15396 --- [ main] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)簡單說明
訪問:http://127.0.0.1:8888/chapter1/demo
自此,一個簡單的SpringBoot就開發完成了。比起原來的springmvc時的開發效率,簡直是一個質的飛躍,無需再煩擾煩人的xml配置文件了。終于可以快樂的擼代碼了~
總結
目前互聯網上很多大佬都有springboot系列教程,如有雷同,請多多包涵了。本文是作者在電腦前一字一句敲的,每一步都是親身實際過的。若文中有所錯誤之處,還望提出,謝謝。
老生常談
- 個人QQ:499452441
- 微信公眾號:lqdevOps
個人博客:https://blog.lqdev.cn
源碼完整實例:chapter-1
本文地址:https://blog.lqdev.cn/2018/07/11/springboot/chapter-one/
轉載于:https://my.oschina.net/xiedeshou/blog/1853320
總結
以上是生活随笔為你收集整理的SpringBoot | 第一章:第一个SpringBoot应用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Log4j 配置
- 下一篇: 在linux系统下把多个终端合并在一个窗