欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Spring中Controller應(yīng)用深入理解

 更新時間:2022年12月08日 16:13:30   作者:居然天上樓  
這篇文章主要介紹了Spring項目中的Controller,Spring Controller本身也是一個Spring Bean,只是它多提供了Web能力,只需要造類上提供@Controller注解即可

概述

Controller是Spring接受并處理網(wǎng)頁請求的組件,是整個應(yīng)用的入口,因此學(xué)會Controller的常用注解對理解一個應(yīng)用是重中之重。SpringBoot的Controller中經(jīng)常會用到注解@Controller、@RestController、@RequestMapping、@RequestBody等,本短文主要對這些常用的Controller注解進(jìn)行簡單介紹。

1. 添加依賴

首先,需要保障此項目中存在spring-boot-starter-web依賴項,否則,當(dāng)前項目并不具備Web應(yīng)用程序開發(fā)所需的依賴!

提示:spring-boot-starter-web是建立在spring-boot-starter的基礎(chǔ)之上的,即包含了spring-boot-starter,所以,在此次調(diào)整依賴項時,只需要將原有的spring-boot-starter改為spring-boot-starter-web即可!

<!-- Spring Boot框架支持WEB開發(fā)的依賴項 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

當(dāng)項目中存在以上依賴項時,就具備了Web開發(fā)的依賴,且此依賴項中內(nèi)置了Tomcat,當(dāng)啟用項目時,會自動將當(dāng)前項目編譯、打包、部署到內(nèi)置的Tomcat上,并啟動Tomcat。

在根包下創(chuàng)建controller.AlbumController類,將此類配置為控制器類,并處理“添加相冊”的請求:

@RestController
@RequestMapping("/album")
public class AlbumController {
    @Autowired
    private IAlbumService albumService;
    // http://localhost:8080/album/add-new?name=TestAlbum001&description=TestDescription001&sort=66
    @RequestMapping("/add-new")
    public void addNew(AlbumAddNewDTO albumAddNewDTO){
        albumService.addNew(albumAddNewDTO);
    }
}

完成后,啟動項目,打開瀏覽器,通過http://localhost:8080/album/add-new?name=TestAlbum001&description=TestDescription001&sort=66可以測試添加數(shù)據(jù)!

提示:目前添加相冊成功時,在瀏覽器中并不會有任何提示。

如果使用相同的請求參數(shù)反復(fù)提交請求,瀏覽器會顯示500錯誤,這是因為沒有處理異常所導(dǎo)致的!

2. 關(guān)于異常

可能出現(xiàn)的異常

  • 如果某個方法會拋出異常,則誰調(diào)用,誰處理;
  • 如果調(diào)用的方法拋出了異常,當(dāng)前方法也沒有使用try...catch進(jìn)行捕獲并處理,相當(dāng)于當(dāng)前方法拋出了此異常;
  • 如果服務(wù)器端程序運行時出現(xiàn)了異常,始終未被處理,框架默認(rèn)的行為是響應(yīng)500錯誤,此時應(yīng)該檢查服務(wù)器端的控制臺,在控制臺中應(yīng)該有異常的相關(guān)信息;
  • 處理異常的本質(zhì)是:告訴客戶端執(zhí)行失敗,且失敗的原因是什么,以至于客戶端下次提交請求時可能成功,另外,對于某些特殊的情景,可能還需要補充執(zhí)行一些其它代碼;
  • 關(guān)于異常的捕獲處理和拋出,在典型的服務(wù)器端項目中,Mapper、Service都不能處理異常,因為它們不與客戶端直接交互,如果它們處理了異常,Controller將不知道出現(xiàn)過錯誤,反而響應(yīng)“成功”的結(jié)果到客戶端,但客戶端的請求是沒有達(dá)到預(yù)期的目標(biāo)的,而Controller有義務(wù)處理異常,因為它是與客戶端交互的組件

總結(jié)

本文只是對常用的一些@Controller層的注解進(jìn)行簡介,對這些注解組合使用,才能夠達(dá)到想要完成的目的任務(wù)。

到此這篇關(guān)于Spring中Controller應(yīng)用深入理解的文章就介紹到這了,更多相關(guān)Spring Controller內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • java實現(xiàn)學(xué)生教師管理系統(tǒng)

    java實現(xiàn)學(xué)生教師管理系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了java實現(xiàn)學(xué)生教師管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-10-10
  • java基于spring boot本地上傳圖片示例解析

    java基于spring boot本地上傳圖片示例解析

    這篇文章主要介紹了java基于spring boot本地上傳圖片示例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 使用springmvc運行流程分析,手寫spring框架嘗試

    使用springmvc運行流程分析,手寫spring框架嘗試

    這篇文章主要介紹了使用springmvc運行流程分析,手寫spring框架嘗試,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • springboot中@component注解的使用實例

    springboot中@component注解的使用實例

    這篇文章主要介紹了springboot中@component注解的使用實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • java 中數(shù)據(jù)庫連接的JDBC和驅(qū)動程序的深入分析

    java 中數(shù)據(jù)庫連接的JDBC和驅(qū)動程序的深入分析

    這篇文章主要介紹了java 中數(shù)據(jù)庫連接的JDBC和驅(qū)動程序的深入分析的相關(guān)資料,需要的朋友可以參考下
    2017-04-04
  • SpringBoot自動裝配原理以及分析

    SpringBoot自動裝配原理以及分析

    這篇文章主要介紹了SpringBoot自動裝配原理以及分析,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • SpringBoot項目嵌入RocketMQ的實現(xiàn)示例

    SpringBoot項目嵌入RocketMQ的實現(xiàn)示例

    本文主要介紹了SpringBoot項目嵌入RocketMQ的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Spring實現(xiàn)泛型注入的示例詳解

    Spring實現(xiàn)泛型注入的示例詳解

    Spring?4.0版本中更新了很多新功能,其中比較重要的一個就是對帶泛型的Bean進(jìn)行依賴注入的支持。本文將通過實例詳細(xì)講講Spring如何實現(xiàn)泛型注入,需要的可以參考一下
    2022-07-07
  • eclipse下ini設(shè)置詳情

    eclipse下ini設(shè)置詳情

    這篇文章主要介紹了eclipse下ini設(shè)置詳情,需要的朋友可以參考下
    2017-10-10
  • Spring?Bean自動裝配入門到精通

    Spring?Bean自動裝配入門到精通

    自動裝配是使用spring滿足bean依賴的一種方法,spring會在應(yīng)用上下文中為某個bean尋找其依賴的bean,Spring中bean有三種裝配機制,分別是:在xml中顯式配置、在java中顯式配置、隱式的bean發(fā)現(xiàn)機制和自動裝配
    2022-08-08

最新評論