【Spring Boot初識一】——世俗遮擋了我的眼
【簡介】
隨著動態語言的流行,java的開發顯得格外的笨重:繁多的配置、低下的開發效率、複雜的部署流程以及第三方技術整合難度大。在上述環境下,Spring Boot使用"習慣優於配置"的理念讓你的專案快速執行起來,使用Spring Boot很容易建立一個獨立執行(執行jar、內嵌Servlet容器)、準生產級別的基於Spring框架的專案,使用Spring Boot你可以不用或者只需要很少的Spring配置。
【優點】
1.專案快速搭建,可無配置整合第三方框架2.可完全不使用xml配置,只使用自動配置和Java Config
3.內嵌Servlet(如Tomcat)容器,應用可用jar包執行(java-jar)
4.執行中應用狀態的監控
5.極大地提高了開發、部署效率
6.與雲端計算的天然整合
【入門小例子】
1.1.設定專案的parent為Spring Boot(該parent包含了大量預設的配置,大大簡化了開發)
1.2.引入Spring Boot的web依賴
1.3.加入Spring Boot的maven外掛
2.編寫Spring Boot應用(程式碼如下)- <?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>com.itmuch.cloud</groupId> <artifactId>spring_boot</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>pom</packaging> <modules> <module>boot_demo</module> <module>boot_taotao</module> </modules> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <java.version>1.8</java.version> </properties> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.2.RELEASE</version> </parent> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project> -
[email protected]:Spring Boot專案的核心註解,主要目的是開啟自動配置
[email protected]:這是一個配置Spring的配置類
[email protected]:標明這是一個SpringMVC的Controller控制器
2.4.main方法:在main方法中啟動一個應用,即:這個應用的入口
3.啟動main方法- package com.itmuch.boot.demo; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Configuration; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; /** * Created by mk on 2018/5/28. */ @Controller @SpringBootApplication @Configuration public class HelloApplication { @RequestMapping("hello") @ResponseBody public String hello(){ return "hello world!"; } public static void main(String[] args) { SpringApplication.run(HelloApplication.class, args); } } -
4.瀏覽器輸入: http:localhost:8080/hello 即可顯示hello world!
【總結】
針對於Spring Boot進行了一個巨集觀的總結,並且實現了一個簡單的例子,接下來就是深入研究內部機制以及在專案中的具體運用了,加油~相關推薦
【Spring Boot初識一】——世俗遮擋了我的眼
【簡介】 隨著動態語言的流行,java的開發顯得格外的笨重:繁多的配置、低下的開發效率、複雜的部署流程以及第三方技術整合難度大。 在上述環境下,Spring Boot使用"習慣優於配置"的理念讓你的專案快速執行起來,使用Spring Boot很容易建立一個獨立執行
【Spring Boot原始碼分析】@EnableAutoConfiguration註解(一)@AutoConfigurationImportSelector註解的處理
一、概述 @EnableAutoConfiguration註解是Spring Boot中配置自動裝載的總開關。本文將從@EnableAutoConfiguration入手,嘗試通過原始碼分析增強對Spring Boot的理解。 所用版本:Spring Boot 2.2.0.M5 + Spring
【Spring Boot學習總結】14.Spring Boot整合Redis-與傳統方式對比
前面我們講解了如何使用Spring Boot來控制事務,下面我們來講解一下如何使用Spring Boot來整合Redis 為了對比傳統工程與Spring Boot整合的不同,以及彰顯Spring Boot整合的優勢,我們會逐一剖析傳統整合方式與Spring Boot整合方式。 一、傳統方式整
【spring boot為例】如何徹底實現前後端徹底分離
問題描述:為了實現前後端的徹底分離,我們徹底放棄使用.jsp的方式在前端顯示頁面中穿插java程式碼,但是帶來的問題也比較明顯,就是前端向後臺發出請求的時候可能會出現跨域的問題,瀏覽器為了安全會阻止跨域請求。 目前有一種很好的方法是使用node.js來解決這個問題,現在我提
【Spring Boot學習總結】13.Spring Boot事務控制
上一篇我們講解了Spring Boot與MyBatis的結合開發,併成功操作了資料庫。眾所周知,保證資料庫一致性的操作,就是事務的控制。 而Spring事務管理可以分為兩種:程式設計式以及宣告式。 其中程式設計式事務就是使用編寫程式碼的方式,進行事務的控制。而宣告式事務一般通
【Spring原始碼解析(一)】Idea搭建Spring原始碼閱讀環境
準備階段 Idea Gradle Git jdk 詳細步驟 以上工具安裝好,這裡主要記錄一下Git和Gradle,工作一直都是用的svn和Maven,所以對於Git和Gradle瞭解的不算多。 (1) Gradle安裝 Gradle的安裝很簡單,和
【Spring Boot學習總結】6.SpringBoot全域性配置檔案
上一篇我們總結了SpringBoot的核心註解以及一些簡單的配置,本篇我們來了解SpringBoot的全域性配置檔案。 Spring Boot專案使用一個全域性配置檔案application.properties或者是application.yml,在resource目錄下
【Spring進階一】——靜態代理和動態代理的理解
Java 靜態代理 靜態代理通常用於對原有業務邏輯的擴充。比如持有二方包的某個類,並呼叫了其中的某些方法。然後出於某種原因,比如記錄日誌、列印方法執行時間,但是又不好將這些邏輯寫入二方包的方法裡。所以可以建立一個代理類實現和二方方法相同的方法,通過讓代理類
【spring-boot 原始碼解析】spring-boot 依賴管理
關鍵詞:spring-boot 依賴管理、spring-boot-dependencies、spring-boot-parent 問題 maven 工程,依賴管理是非常基本又非常重要的功能,現在的工程越來越龐大,依賴越來越多,各種二方包、三方包太多太多,依賴衝突處理起來真是讓人頭疼,經常需要涉及到多個地方需要
【spring-boot 原始碼解析】spring-boot 依賴管理梳理圖
在文章 【spring-boot 原始碼解析】spring-boot 依賴管理 中,我梳理了 spring-boot-build、spring-boot-parent、spring-boot-dependencies、spring-boot-starter-parent 依賴之間的關係,以及我們平常應該怎麼用
一、【Spring Boot】 Excel檔案匯出下載
Spring Boot Excel 檔案匯出 目標: 實現Excel檔案的直接匯出下載,後續開發不需要開發很多程式碼,直接繼承已經寫好的程式碼,增加一個Xml配置就可
一、【Spring Boot】 Excel文件導出下載
body esp tom uil bst center see ron encoding Spring Boot Excel 文件導出 目標: 實現Excel文件的直接導出下載,後續開發不需要開發很多代碼,直接繼承已經寫好的代碼,增加一
【spring boot】伺服器啟動成功後,過一段時間會關閉
啟動命令: java -jar yuedaoapi-1.0.0.jar > log.txt 2>&1 & 其中 >log.txt 是把輸出日誌存放到檔案中 2>&1 輸出所有的日誌檔案 & 後臺啟動 但
【spring Boot】Spring中@Controller和@RestController之間的區別
處理 public 不同 esp 舉例 rest control tro adding spring Boot入手的第一天,看到例子中的@RestController ............. 相同點:都是用來表示Spring某個類的是否可以接收HTTP請求 不同點:@C
【spring Boot】1.創建第一個springBoot項目
web項目 conf star pen sin ocs frame parent mave 入手springBoot,搭建第一個springBoot項目。 看官方文檔還是有點別扭。 https://docs.spring.io/spring-boot/docs/curren
【spring Boot】2.在Myecplise上把spring Boot項目打包 war包和jar包
aps let failed htm 報錯 聲明 執行 spa oss ========================================================第一部分=========================================
【spring boot】3.spring boot項目,綁定資源文件為bean並使用
display fig 屬性綁定 factor pin none rand actor tag 整個例子的結構目錄如下: 1.自定義一個資源文件 com.sxd.name = 申九日木 com.sxd.secret = ${random.value} com.sx
【spring Boot】spring boot獲取資源文件的三種方式【兩種情況下】
不用 ash 12c ica pla bsp foreach set 使用 首先聲明一點,springboot獲取資源文件,需要看是 1》從spring boot默認的application.properties資源文件中獲取 2》還是從自定義的資源文件中獲取
【Spring Boot 】2、Spring Boot CLI
pac sam nbsp ref tps 項目 gin 1.8 com 1.配置Spring的環境變量在環境變量Path 添加: D:\Program Files\spring-boot-cli-1.5.8.RELEASE-bin\spring-1.5.8.RELEASE\
【spring boot】配置文件 application.properties 屬性解析
date hiberna mage ida str 數據丟失 art rop 就會 1.JPA命名策略 spring.jpa.hibernate.naming-strategy = org.hibernate.cfg.DefaultNamingStrategy 有兩種值