SpringBoot專欄(二) -- 搭建第一個SpringBoot項目
解決問題:
搭建第一個SpringBoot項目?
怎樣使用Maven進行Jar管理?
SpringBoot Jar包簡述?
SpringBoot重要註解簡述?
註意:使用SpringBoot2.0,JDK的版本必須在1.8以上,不然會出現一些不兼容的問題。搭建第一個SpringBoot項目(使用IDEA)
1. 搭建第一個SpringBoot項目(使用IDEA)
1.1 使用IDEA創建一個Maven工程
GroupId和ArtifactId兩個加起來可以理解為項目的“坐標”,他們保證了項目的唯一性。如果你想把自己的項目打成Jar包放到在本地Maven倉庫,就需要使用這兩個值。
GroupId一般是公司名,
一直Next到結束。
Maven項目就建成功了。
1.2 搭建SpringBoot框架
1.2.1 在項目Maven的配置文件pom.xml中添加如下依賴。註意一個是parent,一個是在dependencies中。
這個依賴是SpringBoot框架的核心依賴包,SpringBoot通過這個依賴包來整合常用的第三方框架(各種依賴信息)。
這個依賴是SpringBoot Web的核心依賴包,整合了SpringMVC Web。
這裏為什麽不寫版本號?因為在Parent裏面已經封裝好了版本號。SpringBoot對常用依賴的Jar包信息進行了封裝
1.2.2 SpringBoot項目的基本目錄結構
(原目錄結構)
(SpringBoot的目錄結構)
application.yml是SpringBoot的配置文件,名字是固定的。
1.2.3 SpringBoot項目實現(註解含義放到代碼註釋中了,請仔細閱讀)
(完整程序目錄結構)
Application.java
package com.mungerz; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication;// SpringBootApplication註解:負責啟動SpringBoot項目。這個註解實現了掃描包的功能,掃描範圍是該文件所在的當前目錄和同級目錄。 // 我們需要格外註意這個註解所在文件的位置,因為它和掃包有關系。什麽是掃包?就是發現Service,Controller,Component然後自動註入到Spring容器中。 @SpringBootApplication public class Application { public static void main(String[] args){ SpringApplication.run(Application.class, args); } }
ApiController.java
import org.springframework.web.bind.annotation.RestController; import java.util.Map; // RestController註解:說明該類是一個Controller,並且參數和返回值都要求符合Restful要求(即Json字符串) @RestController // RequestMapping註解:Controller的類的映射地址。 @RequestMapping("/api") public class ApiController { // Autowired自動註入註解:相當於new ApiService,不過這個工作是由Spring容器自己完成的。AutoWired可以註入Controller,Service,Component這幾種類。 @Autowired private ApiService apiService; // RequestMapping註解:方法的映射地址 @RequestMapping("/info") public Map<String, Object> info(Map<String, Object> params){ return apiService.info(params); } }
ApiService.java
package com.mungerz.service; import java.util.Map; // Service層接口 public interface ApiService { Map<String, Object> info(Map<String, Object> params); }
ApiServiceImpl.java
package com.mungerz.service; import org.springframework.stereotype.Service; import java.util.HashMap; import java.util.Map; // Service註解:說明該類是一個Service類,從邏輯上我們可以知道這個類屬於Service層,應該寫業務邏輯;從功能上,這個類是可以通過Autowired註解註入的。 @Service public class ApiServiceImpl implements ApiService { @Override public Map<String, Object> info(Map<String, Object> params) { Map<String, Object> result = new HashMap<>(); result.put("result", "hello world"); return result; } }
application.yml
spring:
profiles:
active: dev
2. 結果驗證
2.1 啟動項目
2.2 發送http請求
2.3 返回結果
(轉載請標明出處)
SpringBoot專欄(二) -- 搭建第一個SpringBoot項目