spring boot實戰一: 入門

運行初始項目

參考鏈接
在settings -> Plugins 裏邊搜Spring Assistant,安裝完後重啓idea
由於一直網絡超時,故直接在https://start.spring.io 下載demo.zip而後用idea打開
打開後如圖所示
在這裏插入圖片描述
加入測試程序HelloController
在這裏插入圖片描述

package com.example.demo;

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

/**
 * 測試控制器
 */
@RestController
public class HelloController {

    @RequestMapping("/hello")
    public String hello() {
        return "Hello Spring Boot!";
    }
}
問題一 Resolving Maven dependencies

若未檢測到pom.xml文件並一直卡在Resolving Maven dependencies處
解決方法一:maven換源
參考鏈接
由於不存在settings.xml, 需要自己建一個

settings.xml

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
      xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                          https://maven.apache.org/xsd/settings-1.0.0.xsd">

      <mirrors>
        <mirror>  
            <id>alimaven</id>  
            <name>aliyun maven</name>  
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>  
            <mirrorOf>central</mirrorOf>          
        </mirror>  
      </mirrors>
</settings>

記得勾上override選項
然後apply即可
在這裏插入圖片描述
解決方法二:
在這裏插入圖片描述
即改爲

修改maven Importing的jvm參數, 默認爲700, 直接修改成 -Xms1024m -Xmx2048m

參考鏈接

問題二 程序包org.springframework.web.bind.annotation不存在

參考鏈接

將pom.xml 中的

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

改爲

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

原因:
spring-boot-starter和spring-boot-starter-web的區別:

spring-boot-starter 是Spring Boot的核心啓動器,包含了自動配置、日誌和YAML
spring-boot-starter-web 支持全棧式Web開發,包括Tomcat和spring-webmvc
Web開發要用後者。

Maven 作用

理解一

先不說maven,也不說java開發,先說做菜,你可能像做個紅燒小排(HongshaoxiaopaiApp),你需要的材料是:

小排(xiaopai.jar),要小豬的(version=little pig)。
醬油(jiangyou.jar),要82年的醬油(version=1982)
鹽(yan.jar)
糖(tang.jar),糖要廣東產的(version=guangdong)
生薑(shengjiang.jar)
茴香(huixiang.jar)
於是,你要去菜場買小排,去門口雜貨店買醬油,買鹽……可能你家門口的雜貨店還沒有1982年的醬油,你要去3公里外的農貿市場買……你買原材料的過程估計會很痛苦,可能買到的材料不是1982年的,會影響口感。

在你正式開始做小排前,你會爲食材的事情,忙得半死。

現在有個超市出了個盒裝版的半成品紅燒小排,把生的小排,1982年的醬油,鹽,廣東產的糖等材料打包成一個盒子裏,你回家只要按照說明,就能把紅燒小排做出來,不用考慮材料的來源問題。

Maven就是那個超市,紅燒小排就是你要開發的軟件,醬油、鹽什麼的就是你開發軟件要用到的jar包——我們知道,開發java系統,下載一堆jar包依賴是很正常的事情。有了maven,你不用去各個網站下載各種版本的jar包,也不用考慮這些jar包的依賴關係。Maven會給你搞定,就是超市的配菜師傅會幫你把紅燒小排的配料配齊一樣。

現在你應該明白Maven是做什麼的了吧。

理解二

網上一般說maven是一個構建工具,其實是說得很準確的,不過我覺得更準確的說法應該是一個自動化的構建工具。

你可以這樣說:不用maven的時候所有的jar都不是你家的,需要去各個地方下載拷貝,用了maven所有的jar包都是你家的,想要誰,叫誰的名字就行。(對小白而言,一個用來下載別人現成代碼塊的工具)
出自maven是什麼?-Kevinvcc200
到此爲止,我的問題就結束了,這樣項目便成功運行
在這裏插入圖片描述

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