一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - springboot與springmvc基礎入門講解

springboot與springmvc基礎入門講解

2021-10-06 11:37cgblpx Java教程

本篇文章主要介紹了詳解快速搭建Spring Boot+Spring MVC,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一,SpringBoot

–1,概述

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

–2,用法

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

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

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

springboot與springmvc基礎入門講解

–4,創建類,讓瀏覽器訪問

springboot與springmvc基礎入門講解

–5,測試

啟動服務器

springboot與springmvc基礎入門講解

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

springboot與springmvc基礎入門講解

二,SpringMVC

–1,概述

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

–2,原理

當瀏覽器發起請求,就會訪問服務器----前端控制器DispatcherServlet—處理器映射器HandlerMapping—處理器適配器

HandlerAdaptor—視圖解析器ViewResolver—視圖渲染—響應數據。

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

–處理器映射器HandlerMapping::根據url來找到對應的類并找到對應的方法

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

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

–視圖解析器ViewResolver::解析要在瀏覽器上展示的數據

–視圖渲染:::真正的把數據在瀏覽器上展示

–3,入門案例

需求:訪問url地址,服務器返回汽車的相關數據

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

springboot與springmvc基礎入門講解

–2,創建啟動類RunApp

springboot與springmvc基礎入門講解

–3,創建汽車類

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package cn.tedu;
//充當MVC模式里的M層model:封裝數據
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,創建類,接受瀏覽器的請求,并返回數據

springboot與springmvc基礎入門講解

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
package cn.tedu;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
//職責:接受請求+做出響應
@RestController //接受瀏覽器發來的請求
@RequestMapping("car")//規定了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;//把結果返回給了瀏覽器
    }
    //訪問http://localhost:8080/car/save ,在瀏覽器展示abc
    @RequestMapping("save")
    public String save(){
        //接受請求,并返回數據
        return "abc";
    }
    //訪問http://localhost:8080/car/get ,在控制臺打印123
    @RequestMapping("get")//規定了url的寫法
    public void get(){
        System.out.println(123);
    }
}

–5,測試

springboot與springmvc基礎入門講解

總結

SpringMVC的原理?DispatcherServlet->HandlerMapping->HandlerAdaptor->ViewResolver->View

SpringMVC里用的注解?@RestController 接受請求 + 負責響應 (把數據變成JSON串)

@RequestMapping 跟url匹配規定了url的寫法

@RestController 只能出現在類上

@RequestMapping 可以出現在類上或方法上

SpringBoot的注解?@SpringBootApplication 用來作為springboot的啟動類

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家更多內容!

原文鏈接:https://blog.csdn.net/u012932876/article/details/117810556

延伸 · 閱讀

精彩推薦
  • Java教程升級IDEA后Lombok不能使用的解決方法

    升級IDEA后Lombok不能使用的解決方法

    最近看到提示IDEA提示升級,尋思已經有好久沒有升過級了。升級完畢重啟之后,突然發現好多錯誤,本文就來介紹一下如何解決,感興趣的可以了解一下...

    程序猿DD9332021-10-08
  • Java教程Java BufferWriter寫文件寫不進去或缺失數據的解決

    Java BufferWriter寫文件寫不進去或缺失數據的解決

    這篇文章主要介紹了Java BufferWriter寫文件寫不進去或缺失數據的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望...

    spcoder14552021-10-18
  • Java教程Java8中Stream使用的一個注意事項

    Java8中Stream使用的一個注意事項

    最近在工作中發現了對于集合操作轉換的神器,java8新特性 stream,但在使用中遇到了一個非常重要的注意點,所以這篇文章主要給大家介紹了關于Java8中S...

    阿杜7472021-02-04
  • Java教程Java使用SAX解析xml的示例

    Java使用SAX解析xml的示例

    這篇文章主要介紹了Java使用SAX解析xml的示例,幫助大家更好的理解和學習使用Java,感興趣的朋友可以了解下...

    大行者10067412021-08-30
  • Java教程Java實現搶紅包功能

    Java實現搶紅包功能

    這篇文章主要為大家詳細介紹了Java實現搶紅包功能,采用多線程模擬多人同時搶紅包,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙...

    littleschemer13532021-05-16
  • Java教程xml與Java對象的轉換詳解

    xml與Java對象的轉換詳解

    這篇文章主要介紹了xml與Java對象的轉換詳解的相關資料,需要的朋友可以參考下...

    Java教程網2942020-09-17
  • Java教程20個非常實用的Java程序代碼片段

    20個非常實用的Java程序代碼片段

    這篇文章主要為大家分享了20個非常實用的Java程序片段,對java開發項目有所幫助,感興趣的小伙伴們可以參考一下 ...

    lijiao5352020-04-06
  • Java教程小米推送Java代碼

    小米推送Java代碼

    今天小編就為大家分享一篇關于小米推送Java代碼,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧...

    富貴穩中求8032021-07-12
主站蜘蛛池模板: 啪啪艹| 肥胖老寡妇做性 | 农村美女沟厕嘘嘘被偷看 | 欧美区视频| 天天色色色 | 日本韩国无矿砖码 | www.色小妹 | 美女草b | 91精品国产91久久久久 | 欧美色成人tv在线播放 | 小仙夜晚慰自催眠mp3护士篇 | 国产一级特黄aa大片免费 | 2021国产精品成人免费视频 | 国产做a爰片久久毛片 | 91精品国产综合久久 | 欧美第一视频 | 丝袜足控免费网站xx动漫漫画 | 波多野结衣护士 | 亚洲AV精品无码喷水直播间 | 亚洲精品www久久久久久久软件 | 色婷婷精品| 色猪视频 | 精品破处 | 五月天在线视频观看 | 无颜之月5集全免费看无删除 | 四虎国产成人亚洲精品 | 午夜爱情动作片P | 91精品国产一区 | 日本高清有码视频 | 暖暖的韩国免费观看 | 国产精品视频久久久 | 色婷婷精品 | 大陆黄色片 | 欧美男女爱爱视频 | 日本道在线播放 | 精品一区二区三区高清免费观看 | 91视频国产一区 | 色综合精品 | 小夫妻天天恶战 | a级毛片毛片免费很很综合 a级黄色视屏 | 免费抽搐一进一出印度 |