javascript
SpringBoot | 第一章:第一个SpringBoot应用
2019獨角獸企業(yè)重金招聘Python工程師標準>>>
SpringBoot | 第一章:第一個SpringBoot應(yīng)用
springboot簡單介紹
概述
隨著動態(tài)語言的流行(Ruby、Groovy、Scala、Node.js),Java的開發(fā)顯得格外的笨重:繁多的配置、低下的開發(fā)效率、復(fù)雜的部署流程以及第三方技術(shù)集成難度大。
在上述環(huán)境下,Springboot應(yīng)運而生。它使用"習(xí)慣優(yōu)于配置"(項目中存在大量的配置,此外還內(nèi)置一個習(xí)慣性的配置,讓你無須手動進行配置)的理念讓你的項目快速運行起來。使用springboot很容易創(chuàng)建一個獨立運行(運行jar,內(nèi)嵌servlet容器)、準生產(chǎn)級別的基于Spring框架的項目,使用springboot你可以不用或者只需要很少的Spring配置。
Spring Boot 的核心功能
- 獨立運行的Spring項目
Spring Boot可以以jar包的形式獨立運行,運行一個Spring Boot項目只需要通過java -jar xx.jar。
- 內(nèi)置Servlet容器
Spring Boot可選擇內(nèi)嵌Tomcat、Jetty或者Undertow,這樣無須以war包形式部署。
- 提供starter簡化maven配置
Spring提供了一系列的starter pom來簡化maven依賴加載,例如:當(dāng)你使用了spring-boot-starter-web時,會自動加入相關(guān)依賴,無需你手動一個一個的添加坐標依賴。
- 自動配置Spring
Spring Boot會根據(jù)在類路徑中的jar包、類,為jar包里的類自動配置Bean,這樣會極大地減少我們要使用的配置。當(dāng)然,Spring Boot只是考慮了大多數(shù)的開發(fā)場景,并不是所有場景,若在實際開發(fā)中,我們需要自動配置bean,而Spring Boot沒有提供支持,則可以自定義自動配置。
- 無代碼生成和xml配置
Spring Boot的神奇的不是借助于代碼生成來實現(xiàn)的,而是通過條件注解來實現(xiàn)的,這是Spring 4.x提供的新特性,Spring 4.x提倡使用java配置和注解配置相結(jié)合,而Spring Boot不需要任何xml配置即可實現(xiàn)Sping Boot的所有配置。
優(yōu)缺點
優(yōu)點
缺點
工程搭建
使用的工具為:Spring Tool Suite(3.9.3.RELEASE) SpringBoot:1.5.14.RELEASE
Spring Tool Suite 下載地址:https://spring.io/tools/sts/all
創(chuàng)建項目
利用**Spring Initializr**進行快速創(chuàng)建項目
- 選擇Dashboard-->CREATE SPRING STARTER PROJECT進行創(chuàng)建項目,或者可以選擇file-->new-->Spring Starter Project,打開創(chuàng)建面板
第一種方式:
第二種方式:
- 出現(xiàn)創(chuàng)建面板,填寫項目信息
這里url建議直接填寫:https://start.spring.io(默認是http方式)
maven相關(guān)命名說明
- 選擇依賴包和版本
除此下載包時,可能會比較慢,建議替換成阿里云的maven鏡像
項目結(jié)構(gòu)
- src-main-java-cn.lqdev.learning.springboot.chapter1#主函數(shù),啟動類,運行它如果運行了 Tomcat、Jetty、Undertow 等容器-Chapter1Application -resouces#存放靜態(tài)資源 js/css/images 等- statics#存放 html 模板文件- templates#主要的配置文件,SpringBoot啟動時候會自動加載application.properties/bootstrap.properties - application.properties#測試文件存放目錄 -test# pom.xml 文件是Maven構(gòu)建的基礎(chǔ),里面包含了我們所依賴JAR和Plugin的信息 - pompom依賴
由于使用了Spring Initializr直接創(chuàng)建項目,相關(guān)依賴自動添加好了。
<?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應(yīng)用</description><!-- Springboot的版本,大家選擇時,應(yīng)該選擇 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><!-- 內(nèi)嵌了tomcat服務(wù)器,開發(fā)簡單的web應(yīng)用,此依賴即可 --><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應(yīng)用 * @author oKong**/ //@RestController = @Controller + @ResponseBody 默認直接返回json @RestController public class DemoController {@RequestMapping(value = "/demo", method = RequestMethod.GET)public String demo() {return "hello,SpringBoot!";} }啟動應(yīng)用
直接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就開發(fā)完成了。比起原來的springmvc時的開發(fā)效率,簡直是一個質(zhì)的飛躍,無需再煩擾煩人的xml配置文件了。終于可以快樂的擼代碼了~
總結(jié)
目前互聯(lián)網(wǎng)上很多大佬都有springboot系列教程,如有雷同,請多多包涵了。本文是作者在電腦前一字一句敲的,每一步都是親身實際過的。若文中有所錯誤之處,還望提出,謝謝。
老生常談
- 個人QQ:499452441
- 微信公眾號:lqdevOps
個人博客:https://blog.lqdev.cn
源碼完整實例:chapter-1
本文地址:https://blog.lqdev.cn/2018/07/11/springboot/chapter-one/
轉(zhuǎn)載于:https://my.oschina.net/xiedeshou/blog/1853320
總結(jié)
以上是生活随笔為你收集整理的SpringBoot | 第一章:第一个SpringBoot应用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Log4j 配置
- 下一篇: 【星云测试】开发者测试-采用精准测试工具