溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

springboot與springmvc如何使用

發(fā)布時間:2021-07-13 10:31:08 來源:億速云 閱讀:184 作者:Leah 欄目:開發(fā)技術(shù)

springboot與springmvc如何使用,相信很多沒有經(jīng)驗的人對此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個問題。

一,SpringBoot

–1,概述

用來整合maven項目,可以和Spring框架無縫銜接。

–2,用法

–1,創(chuàng)建SpringBoot工程:File-New-Project-選擇Spring Init…-next-輸入groupId、項目id、選成jdk8-next-選擇SpringWeb-ok

–2,配置Maven:File-Settings-選擇Build…-Maven-修改三處(解壓的位置、settings.xml位置-本地倉庫位置)-ok

–3,找到自動生成的一個類,直接運行 ( 啟動服務(wù)器 )

springboot與springmvc如何使用

–4,創(chuàng)建類,讓瀏覽器訪問

springboot與springmvc如何使用

–5,測試

啟動服務(wù)器

springboot與springmvc如何使用

打開瀏覽器訪問指定的地址::http://localhost:8080/hi

springboot與springmvc如何使用

二,SpringMVC

–1,概述

主要的職責(zé):接受瀏覽器發(fā)來的請求,給瀏覽器發(fā)送響應(yīng)的數(shù)據(jù)
遵循了MVC的設(shè)計模式:好處是可以把代碼松耦合
MVC的全稱:M是Model模型,用來封裝數(shù)據(jù)
  V是View視圖,用來展示數(shù)據(jù)
  C是Controller控制器,用來寫業(yè)務(wù)代碼

–2,原理

當(dāng)瀏覽器發(fā)起請求,就會訪問服務(wù)器----前端控制器DispatcherServlet—處理器映射器HandlerMapping—處理器適配器

HandlerAdaptor—視圖解析器ViewResolver—視圖渲染—響應(yīng)數(shù)據(jù)。

–前端控制器DispatcherServlet:: 把請求進行分發(fā),找到對應(yīng)的類里的方法開始干活

–處理器映射器HandlerMapping::根據(jù)url來找到對應(yīng)的類并找到對應(yīng)的方法

http://localhost:8080/hello/hi 即將訪問 HelloBoot類里的 hi()

–處理器適配器HandlerAdaptor::拿到要執(zhí)行的類名和方法名,開始干活

–視圖解析器ViewResolver::解析要在瀏覽器上展示的數(shù)據(jù)

–視圖渲染:::真正的把數(shù)據(jù)在瀏覽器上展示

–3,入門案例

需求:訪問url地址,服務(wù)器返回汽車的相關(guān)數(shù)據(jù)

–1,創(chuàng)建Maven的模塊:選中工程-右鍵-New-Maven-next-輸入module的名字-finish

springboot與springmvc如何使用

–2,創(chuàng)建啟動類RunApp

springboot與springmvc如何使用

–3,創(chuàng)建汽車類

package cn.tedu;
//充當(dāng)MVC模式里的M層model:封裝數(shù)據(jù)
public class Car{
    //提供屬性 + get/set/toString
    private int id;
    private String name;
    private String type;
    private String color;
    private double price;
    // get/set /toString
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public String getType() {
        return type;
    }
    public void setType(String type) {
        this.type = type;
    }
    public String getColor() {
        return color;
    }
    public void setColor(String color) {
        this.color = color;
    }
    public double getPrice() {
        return price;
    }
    public void setPrice(double price) {
        this.price = price;
    }
    //如果沒重寫,就是用Object的toString()返回的是地址值。
    //沒重了,就是返回屬性值。
    @Override
    public String toString() {
        return "Car{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", type='" + type + '\'' +
                ", color='" + color + '\'' +
                ", price=" + price +
                '}';
    }
}

–4,創(chuàng)建類,接受瀏覽器的請求,并返回數(shù)據(jù)

springboot與springmvc如何使用

package cn.tedu;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
//職責(zé):接受請求+做出響應(yīng)
@RestController //接受瀏覽器發(fā)來的請求
@RequestMapping("car")//規(guī)定了url的寫法
public class CarController {
    //訪問http://localhost:8080/car/find,
//在瀏覽器展示了{"id":718,"name":"保時捷","type":"Cayman T","color":"紅色","price":641000.0}
    @RequestMapping("find")
    public Car find(){
        Car c = new Car();
        c.setId(718);
        c.setName("保時捷");
        c.setType("Cayman T");
        c.setColor("紅色");
        c.setPrice(641000);
        return c;//把結(jié)果返回給了瀏覽器
    }
    //訪問http://localhost:8080/car/save ,在瀏覽器展示abc
    @RequestMapping("save")
    public String save(){
        //接受請求,并返回數(shù)據(jù)
        return "abc";
    }
    //訪問http://localhost:8080/car/get ,在控制臺打印123
    @RequestMapping("get")//規(guī)定了url的寫法
    public void get(){
        System.out.println(123);
    }
}

–5,測試

springboot與springmvc如何使用

看完上述內(nèi)容,你們掌握springboot與springmvc如何使用的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI