對於以前的Spring框架的使用,各類配置文件XML、properties一旦出錯以後錯誤難尋,這也是爲何SpringBoot被推上主流的緣由,SpringBoot的配置簡單,說5分鐘能從框架的搭建到運行也不爲過.
如今更是微服務當道,因此在此總結下SpringBoot的一些知識,新手教程.
Gradle是一個基於Apache Ant和Apache Maven概念的項目自動化構建開源工具,它使用一種基於Groovy語言來聲明項目設置.也就是和Maven差很少的項目構建工具.html
maven要引入依賴 pom.xmljava
<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.1.5.RELEASE</version>
</dependency>
複製代碼
而Gradle引入 build.gradlemysql
implementation 'org.springframework.boot:spring-boot-starter-web'
複製代碼
Gradle本地安裝教程
windows :www.cnblogs.com/linkstar/p/… Mac_OS :www.jianshu.com/p/e9d035f30…web
優勢: Gradle 至關於 Maven 與 Ant 的合體
缺點: 對於微服務多項目的子類引用,不如 Mavenspring
下面開始進入正題:sql
進入 start.spring.io/ 生成一個初始項目編程
這裏會下載一個zip的項目壓縮包windows
demo.zip解壓以後記得複製下demo文件夾放的路徑
在此用的開發工具是IntelliJ IDEA
下面是導入流程: IDEA裏點擊File -> Open -> 粘貼剛剛的demo文件夾路徑 -> 找到build.gradle雙擊
-> Open as Peoject -> 等待Gradle加載完就好,看不明白看下圖bash
(可選) 更改項目名
修改 settings.gradle微信
rootProject.name = 'SpringBoot-demo'
複製代碼
去文件夾把項目文件夾名稱改了
從新導入, 到此, 更改項目名結束
打開以後Gradle加載下載的特別慢,要換成國內源,打開build.gradle配置文件用下面的替換
build.gradle
/** buildscript中的聲明是gradle腳本自身須要使用的資源。 * 能夠聲明的資源包括依賴項、第三方插件、maven倉庫地址等 */
plugins {
id 'org.springframework.boot' version '2.1.5.RELEASE'
id 'java'
}
apply plugin: 'io.spring.dependency-management'
group = 'com.example'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '1.8'
//讓工程支持IDEA的導入
apply plugin: 'idea'
repositories {
//使用國內源下載依賴
maven { url 'http://maven.aliyun.com/nexus/content/groups/public/' }
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'com.alibaba:druid:1.1.11'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}
複製代碼
啓動前準備
依據下圖把 DemoApplication 啓動類 移到包最外層
啓動類至關於管理項目的負責人,你把他扔到與控制層同級確定出錯不是;
** TestController.java **
package com.example.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/** * 這裏的@RestController至關於 @ResponseBody+@Controller * 使用@RestController 至關於使每一個方法都加上了 @ResponseBody 註解 * created by cfa 2018-11-06 下午 11:30 **/
@RestController
public class TestController {
/** * 這裏的@GetMapping至關於@RequestMapping(value = "/hello", method = RequestMethod.GET) * created by cfa 2018-11-06 下午 11:29 **/
@GetMapping("hello")
public String test(){
return "i love java";
}
}
複製代碼
啓動成功以後訪問 http://localhost:8080/hello
上圖成功表明項目能夠訪問了什麼是yml? YML文件格式是YAML (YAML Aint Markup Language)編寫的文件格式,YAML是一種直觀的可以被電腦識別的的數據數據序列化格式,而且容易被人類閱讀,容易和腳本語言交互的,能夠被支持YAML庫的不一樣的編程語言程序導入,好比: C/C++, Ruby, Python, Java, Perl, C#, PHP等。
聽不懂吧,其實我也看不明白
就是至關於xml,properties的配置文件,看的更直觀,上代碼吧仍是
# 下述properties
spring.resources.locations= classpath:/templates
# 改成yml格式以後
spring:
resources:
static-locations: classpath:/templates
複製代碼
yml須要注意,冒號(:)後面要跟空格,第二級和第一級要在上下行用一個Tab的距離
** application.yml **
server:
port: 8080
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/dovis?characterEncoding=utf-8
username: root
password: root
mvc:
view:
suffix: .html
resources:
static-locations: classpath:/templates
複製代碼
歡迎關注微信公衆號