springBoot入門總結(一)HelloWord

一、什麼是springBoot?

        spring幾乎是每一位Java開發人員都耳熟能詳的開發框架,不論你是一名初出茅廬的程序員還是經驗豐富的老司機,都會對其有一定的瞭解或者使用經驗。傳統的spring web開發模式,使用xml格式配置集成各種組件,這使得我們能夠簡單快速的構建一個web工程,但是對於大多數入門級開發人員來說,使用xml形式開發很容易出現紕漏,進而導致運行失敗或者更大的問題,因此會浪費開發人員很多寶貴的時間,對公司來說也是有所損失。spring的開源組織很早就意識到這個問題,於是他們便對spring框架的全系列組件進行了內部封裝。對外只提供maven jar的形式來引入配置,讓每一個spring項目都是以spring的子項目的形式來運行,這樣開發人員不用再去注重配置文件的繁瑣,而是把精力放到業務邏輯以及更深層次的架構方面。

        2014年4月1日,springBoot發佈了第一個正式版本,該項目旨在幫助開發者更容易的創建基於spring的應用程序和服務,使現有的和新的spring開發者能夠最快速的獲得所需要的spring功能。

二、springBoot的優缺

1. 爲所有Spring開發者更快的入門
2. 開箱即用,提供各種默認配置來簡化項目配置
3. 內嵌式容器簡化Web項目
4. 沒有冗餘代碼生成和XML配置的要求

5. 提供一系列大型企業級項目的功能性特性

三、系統要求

1. JDK 1.8.0_151
2. 開發工具(IntelliJ IDEA 2017.3.1)
3. 數據庫( MySQL 5.7.20)

四、構建springBoot工程

點擊Create New Project來創建一個新的springboot應用程序(如下圖)



點擊後展示(如下圖)


點擊next進入下一步,根據提示填寫內容即可,此步驟內需要注意的是packaging要選擇jar,如果上面我們選擇了war形式,也添加了Web依賴並且在開發過程中使用Application形式啓動,則需要註釋pom.xml配置文件內tomcat依賴的scope屬性。(如下圖)


next勾選依賴,此處我們只需要勾選web依賴即可,後續依賴逐步添加(如下圖)


next finish完成工程的創建。

工程的目錄結構如下


我們可以看到以上工程的主要目錄結構

1.src/main/java 存放項目所有源代碼的目錄
SpringbootDemoApplication.java文件爲項目啓動入庫文件。
2.src/main/resources 存放項目所有資源文件以及配置文件目錄
static目錄存放靜態資源,例如音頻、圖片等。
template目錄存放頁面,例如HTML文件、JSP文件等。

application.properties  該配置文件是項目的核心配置文件

3.src/test存放測試代碼目錄

五、自動生成文件解析

1.POM文件

pom.xml  maven配置文件,因爲我們採用的maven管理jar,所以這裏會自動生成一個pom文件

<?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.mxy</groupId>
	<artifactId>springboot-demo</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>jar</packaging>

	<name>springboot-demo</name>
	<description>Demo project for Spring Boot</description>
       
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.0.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>
	
               <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>
        <groupId></groupId>標籤標記項目或者組織的唯一標誌,並且配置時生成的路徑也是由此生成,如com.mxy.springboot生成的相對路徑爲:/com/mxy/springboot。
        <artifactId></artifactId>標籤標記項目的通用名稱。
        <version></version>標籤標記版本信息。

        <parent></parent>標籤引入springboot父類依賴,它可以提供依賴管理,引入以後在聲明其他依賴關係時,工程自動引入springboot其他相關依賴包,不需要開發人員單獨進行引入。

        <parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.0.0.RELEASE</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>

       <dependencies></dependencies>依賴關係。

      <dependency></dependency>標籤引入spring-web組件,springboot核心實現其實是一個springMVC,所以只要引入spring-web組件,工程默認引入所有spring相關依賴。

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

        <plugin></plugin>如果我們使用main啓動spring,那麼plugin必須添加,否則工程無法啓動。如果使用maven的spring-boot:run啓動,則不需要以下配置。

        <plugin>
		<groupId>org.springframework.boot</groupId>
	        <artifactId>spring-boot-maven-plugin</artifactId>
	</plugin>

2.SpringbootDemoApplication.java

SpringbootDemoApplication該類是程序的入口類內有個main方法,可以直接通過run as運行項目。


@SpringBootApplication註解

@SpringBootApplication註解,它是聲明當前類爲sprinboot的入口類。而一個springboot項目內有且只能有一個這個註解存在。

3.application.properties  該配置文件是項目的核心配置文件,以xx.xx.xx的形式存在.

六、HelloWord

        在src/main/java目錄下創建目錄controller,新建Java類HelloWordController,並且編寫方法index

package com.mxy.springboot.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class HelloWordController {
    @RequestMapping("/index")
    public String index(){
        return "success";
    }
}
@RestController註解,表示該接口全部以json格式返回,可以直接編寫Restful接口。

@RequestMapping註解,RequestMapping是一個用來處理請求地址映射的註解,可用於類或方法上。用於類上,表示類中的所有響應請求的方法都是以該地址作爲父路徑。

運行工程,可以看到默認端口8080,啓動成功。


瀏覽器錄入http://localhost:8080/index訪問index服務



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章