Spring
為什麼選擇 Spring
概述 微服務 響應式 事件驅動 雲原生 Web 應用 無伺服器 批處理
學習
概述 快速入門 指南 部落格
專案
概述 Spring Boot Spring 框架 Spring Cloud Spring Cloud Data Flow Spring Data Spring Integration Spring Batch Spring Security 檢視所有專案
  • 開發工具
  • Spring Tools 4 Spring Initializr
    學院
    課程 獲得認證
    解決方案
    概述 Spring Runtime Spring 諮詢 Spring 團隊學院 安全公告
    社群
    概述 活動 團隊
    Spring Framework 6.2.6
      • 概述
      • 核心技術
        • IoC 容器
          • Spring IoC 容器和 Bean 簡介
          • 容器概述
          • Bean 概述
          • 依賴項
            • 依賴注入
            • 依賴項和配置詳情
            • 使用 depends-on
            • 延遲初始化 Bean
            • 自動裝配協作者
            • 方法注入
          • Bean 作用域
          • 自定義 Bean 的特性
          • Bean 定義繼承
          • 容器擴充套件點
          • 基於註解的容器配置
            • 使用 @Autowired
            • 使用 @Primary 或 @Fallback 微調基於註解的自動裝配
            • 使用 Qualifiers 微調基於註解的自動裝配
            • 使用泛型作為自動裝配限定符
            • 使用 CustomAutowireConfigurer
            • 使用 @Resource 進行注入
            • 使用 @Value
            • 使用 @PostConstruct 和 @PreDestroy
          • 類路徑掃描和託管元件
          • 使用 JSR 330 標準註解
          • 基於 Java 的容器配置
            • 基本概念:@Bean 和 @Configuration
            • 使用 AnnotationConfigApplicationContext 例項化 Spring 容器
            • 使用 @Bean 註解
            • 使用 @Configuration 註解
            • 組合基於 Java 的配置
          • 環境抽象
          • 註冊 LoadTimeWeaver
          • ApplicationContext 的附加功能
          • BeanFactory API
        • 資源
        • 驗證、資料繫結和型別轉換
          • 使用 Spring 的 Validator 介面進行驗證
          • 資料繫結
          • 將程式碼解析為錯誤訊息
          • Spring 型別轉換
          • Spring 欄位格式化
          • 配置全域性日期和時間格式
          • Java Bean 驗證
        • Spring Expression Language (SpEL)
          • 評估
          • Bean 定義中的表示式
          • 語言參考
            • 字面量表達式
            • 屬性、陣列、列表、對映和索引器
            • 內聯列表
            • 內聯對映
            • 陣列構造
            • 方法
            • 運算子
            • 型別
            • 建構函式
            • 變數
            • 函式
            • 可變引數呼叫
            • Bean 引用
            • 三元運算子 (If-Then-Else)
            • Elvis 運算子
            • 安全導航運算子
            • 集合選擇
            • 集合投影
            • 表示式模板
          • 示例中使用的類
        • Spring 的面向切面程式設計
          • AOP 概念
          • Spring AOP 能力和目標
          • AOP 代理
          • @AspectJ 支援
            • 啟用 @AspectJ 支援
            • 宣告切面
            • 宣告切入點
            • 宣告通知
            • 引入
            • 切面例項化模型
            • 一個 AOP 示例
          • 基於 Schema 的 AOP 支援
          • 選擇使用哪種 AOP 宣告風格
          • 混合切面型別
          • 代理機制
          • 程式化建立 @AspectJ 代理
          • 在 Spring 應用中使用 AspectJ
          • 更多資源
        • Spring AOP API
          • Spring 中的 Pointcut API
          • Spring 中的 Advice API
          • Spring 中的 Advisor API
          • 使用 ProxyFactoryBean 建立 AOP 代理
          • 簡潔的代理定義
          • 使用 ProxyFactory 程式化建立 AOP 代理
          • 操作增強物件
          • 使用“自動代理”功能
          • 使用 TargetSource 實現
          • 定義新的 Advice 型別
        • 空安全
        • 資料緩衝區和編解碼器
        • 日誌記錄
        • AOT(預編譯)最佳化
        • 附錄
          • XML Schema
          • XML Schema 編寫
          • 應用程式啟動步驟
      • 資料訪問
        • 事務管理
          • Spring 框架事務支援模型的優勢
          • 理解 Spring 框架事務抽象
          • 將資源與事務同步
          • 宣告式事務管理
            • 理解 Spring 框架的宣告式事務實現
            • 宣告式事務實現示例
            • 回滾宣告式事務
            • 為不同的 Bean 配置不同的事務語義
            • <tx:advice/> 設定
            • 使用 @Transactional
            • 事務傳播
            • 增強事務操作
            • 在 AspectJ 中使用 @Transactional
          • 程式設計式事務管理
          • 選擇程式設計式還是宣告式事務管理
          • 事務繫結的事件
          • 應用程式伺服器特定整合
          • 常見問題解決方案
          • 更多資源
        • DAO 支援
        • 使用 JDBC 進行資料訪問
          • 選擇 JDBC 資料庫訪問方法
          • 包層級結構
          • 使用 JDBC 核心類控制基本 JDBC 處理和錯誤處理
          • 控制資料庫連線
          • JDBC 批處理操作
          • 使用 SimpleJdbc 類簡化 JDBC 操作
          • 將 JDBC 操作建模為 Java 物件
          • 引數和資料值處理的常見問題
          • 嵌入式資料庫支援
          • 初始化 DataSource
        • 使用 R2DBC 進行資料訪問
        • 物件關係對映 (ORM) 資料訪問
          • Spring 的 ORM 簡介
          • 通用 ORM 整合考量
          • Hibernate
          • JPA
        • 使用物件-XML 對映器進行 XML 編組
        • 附錄
      • Servlet 棧上的 Web
        • Spring Web MVC
          • DispatcherServlet
            • 上下文層級結構
            • 特殊 Bean 型別
            • Web MVC 配置
            • Servlet 配置
            • 處理
            • 路徑匹配
            • 攔截
            • 異常
            • 檢視解析
            • 區域設定
            • 主題
            • Multipart 解析器
            • 日誌記錄
          • 過濾器
          • HTTP 訊息轉換
          • 註解控制器
            • 宣告
            • 對映請求
            • 處理方法
              • 方法引數
              • 返回值
              • 型別轉換
              • 矩陣變數
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • 重定向屬性
              • Flash 屬性
              • Multipart
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • @InitBinder
            • 驗證
            • 異常
            • 控制器通知
          • 函式式端點
          • URI 連結
          • 非同步請求
          • CORS
          • 錯誤響應
          • Web 安全
          • HTTP 快取
          • 檢視技術
            • Thymeleaf
            • FreeMarker
            • Groovy Markup
            • 指令碼檢視
            • HTML 片段
            • JSP 和 JSTL
            • RSS 和 Atom
            • PDF 和 Excel
            • Jackson
            • XML 編組
            • XSLT 檢視
          • MVC 配置
            • 啟用 MVC 配置
            • MVC 配置 API
            • 型別轉換
            • 驗證
            • 攔截器
            • 內容型別
            • 訊息轉換器
            • 檢視控制器
            • 檢視解析器
            • 靜態資源
            • 預設 Servlet
            • 路徑匹配
            • 高階 Java 配置
            • 高階 XML 配置
          • HTTP/2
        • REST 客戶端
        • 測試
        • WebSockets
          • WebSocket API
          • SockJS 回退
          • STOMP
            • 概述
            • 優勢
            • 啟用 STOMP
            • WebSocket 傳輸
            • 訊息流
            • 註解控制器
            • 傳送訊息
            • 簡單 Broker
            • 外部 Broker
            • 連線到 Broker
            • 點作為分隔符
            • 認證
            • 令牌認證
            • 授權
            • 使用者目標
            • 訊息順序
            • 事件
            • 攔截
            • STOMP 客戶端
            • WebSocket 作用域
            • 效能
            • 監控
            • 測試
        • 其他 Web 框架
      • 響應式棧上的 Web
        • Spring WebFlux
          • 概述
          • 響應式核心
          • DispatcherHandler
          • 註解控制器
            • @Controller
            • 對映請求
            • 處理方法
              • 方法引數
              • 返回值
              • 型別轉換
              • 矩陣變數
              • @RequestParam
              • @RequestHeader
              • @CookieValue
              • @ModelAttribute
              • @SessionAttributes
              • @SessionAttribute
              • @RequestAttribute
              • Multipart 內容
              • @RequestBody
              • HttpEntity
              • @ResponseBody
              • ResponseEntity
              • Jackson JSON
            • Model
            • DataBinder
            • 驗證
            • 異常
            • 控制器通知
          • 函式式端點
          • URI 連結
          • CORS
          • 錯誤響應
          • Web 安全
          • HTTP 快取
          • 檢視技術
          • WebFlux 配置
          • HTTP/2
        • WebClient
          • 配置
          • retrieve()
          • 交換
          • 請求體
          • 過濾器
          • 屬性
          • 上下文
          • 同步使用
          • 測試
        • HTTP 介面客戶端
        • WebSockets
        • 測試
        • RSocket
        • 響應式庫
      • 測試
        • Spring 測試簡介
        • 單元測試
        • 整合測試
        • JDBC 測試支援
        • Spring TestContext 框架
          • 關鍵抽象
          • 引導 TestContext 框架
          • TestExecutionListener 配置
          • 應用程式事件
          • 測試執行事件
          • 上下文管理
            • 使用 XML 資源進行上下文配置
            • 使用 Groovy 指令碼進行上下文配置
            • 使用元件類進行上下文配置
            • 混合使用 XML、Groovy 指令碼和元件類
            • 使用 Context Customizers 進行上下文配置
            • 使用 Context Initializers 進行上下文配置
            • 上下文配置繼承
            • 使用環境配置檔案進行上下文配置
            • 使用測試屬性源進行上下文配置
            • 使用動態屬性源進行上下文配置
            • 載入 WebApplicationContext
            • 使用 Web Mock
            • 上下文快取
            • 上下文失敗閾值
            • 上下文層級結構
          • 測試夾具的依賴注入
          • 測試中的 Bean 覆蓋
          • 測試請求和會話作用域的 Bean
          • 事務管理
          • 執行 SQL 指令碼
          • 並行測試執行
          • TestContext 框架支援類
          • 測試的 AOT(預編譯)支援
        • WebTestClient
        • MockMvc
          • 概述
          • 設定選項
          • Hamcrest 整合
            • 靜態匯入
            • 配置 MockMvc
            • 設定功能
            • 執行請求
            • 定義預期
            • 非同步請求
            • 流式響應
            • 過濾器註冊
          • AssertJ 整合
            • 配置 MockMvcTester
            • 執行請求
            • 定義預期
            • MockMvc 整合
          • HtmlUnit 整合
            • 為什麼需要 HtmlUnit 整合?
            • MockMvc 和 HtmlUnit
            • MockMvc 和 WebDriver
            • MockMvc 和 Geb
          • MockMvc 與端到端測試
          • 更多示例
        • 測試客戶端應用程式
        • 附錄
          • 註解
            • 標準註解支援
            • Spring 測試註解
              • @BootstrapWith
              • @ContextConfiguration
              • @WebAppConfiguration
              • @ContextHierarchy
              • @ContextCustomizerFactories
              • @ActiveProfiles
              • @TestPropertySource
              • @DynamicPropertySource
              • @TestBean
              • @MockitoBean 和 @MockitoSpyBean
              • @DirtiesContext
              • @TestExecutionListeners
              • @RecordApplicationEvents
              • @Commit
              • @Rollback
              • @BeforeTransaction
              • @AfterTransaction
              • @Sql
              • @SqlConfig
              • @SqlMergeMode
              • @SqlGroup
              • @DisabledInAotMode
            • Spring JUnit 4 測試註解
            • Spring JUnit Jupiter 測試註解
            • 測試的元註解支援
          • 更多資源
      • 整合
        • REST 客戶端
        • JMS (Java 訊息服務)
          • 使用 Spring JMS
          • 傳送訊息
          • 接收訊息
          • 支援 JCA 訊息端點
          • 註解驅動的監聽器端點
          • JMS 名稱空間支援
        • JMX
          • 將 Bean 匯出到 JMX
          • 控制 Bean 的管理介面
          • 控制 Bean 的 ObjectName 例項
          • 使用 JSR-160 聯結器
          • 透過代理訪問 MBeans
          • 通知
          • 更多資源
        • 郵件
        • 任務執行和排程
        • 快取抽象
          • 理解快取抽象
          • 基於註解的宣告式快取
          • JCache (JSR-107) 註解
          • 基於 XML 的宣告式快取
          • 配置快取儲存
          • 插入不同的後端快取
          • 如何設定 TTL/TTI/逐出策略/XXX 功能?
        • 可觀察性支援
        • JVM 檢查點恢復
        • CDS
        • 附錄
      • 語言支援
        • Kotlin
          • 要求
          • 擴充套件
          • 空安全
          • 類和介面
          • 註解
          • Bean 定義 DSL
          • Web
          • 協程
          • 使用 Kotlin 的 Spring 專案
          • 入門
          • 資源
        • Apache Groovy
        • 動態語言支援
      • 附錄
      • Java API
      • Kotlin API
      • Wiki
    編輯此頁 GitHub 專案 Stack Overflow
    • Spring 框架
    • 測試
    • MockMvc
    • Hamcrest 整合

    Hamcrest 整合

    Plain MockMvc 提供了一個 API,可以使用 builder 風格的方法構建請求,並可以透過靜態匯入來啟動。Hamcrest 用於定義預期,它提供了許多開箱即用的選項來滿足常見需求。

    本節概要

    • 靜態匯入
    • 配置 MockMvc
    • 設定功能
    • 執行請求
    • 定義預期
    • 非同步請求
    • 流式響應
    • 過濾器註冊
    設定選項 靜態匯入
    • Spring 框架
      • 6.2.6
      • 6.1.19
      • 6.0.23
      • 7.0.0-M4
      • 7.0.0-SNAPSHOT
      • 6.2.7-SNAPSHOT
      • 6.1.20-SNAPSHOT
    • 相關 Spring 文件
      • Spring Boot
      • Spring 框架
      • Spring Cloud
        • Spring Cloud Build
        • Spring Cloud Bus
        • Spring Cloud Circuit Breaker
        • Spring Cloud Commons
        • Spring Cloud Config
        • Spring Cloud Consul
        • Spring Cloud Contract
        • Spring Cloud Function
        • Spring Cloud Gateway
        • Spring Cloud Kubernetes
        • Spring Cloud Netflix
        • Spring Cloud OpenFeign
        • Spring Cloud Stream
        • Spring Cloud Task
        • Spring Cloud Vault
        • Spring Cloud Zookeeper
      • Spring Data
        • Spring Data Cassandra
        • Spring Data Commons
        • Spring Data Couchbase
        • Spring Data Elasticsearch
        • Spring Data JPA
        • Spring Data KeyValue
        • Spring Data LDAP
        • Spring Data MongoDB
        • Spring Data Neo4j
        • Spring Data Redis
        • Spring Data JDBC & R2DBC
        • Spring Data REST
      • Spring Integration
      • Spring Batch
      • Spring Security
        • Spring Authorization Server
        • Spring LDAP
        • Spring Security Kerberos
        • Spring Session
        • Spring Vault
      • Spring AI
      • Spring AMQP
      • Spring CLI
      • Spring GraphQL
      • Spring for Apache Kafka
      • Spring Modulith
      • Spring for Apache Pulsar
      • Spring Shell
    • 所有文件...
    Spring

    Copyright © 2005 -Broadcom。保留所有權利。“Broadcom”一詞指 Broadcom Inc. 和/或其子公司。
    使用條款 • 隱私政策 • 商標指南 • 致謝 • 您的加州隱私權 • Cookie 設定

    Apache®、Apache Tomcat®、Apache Kafka®、Apache Cassandra™ 和 Apache Geode™ 是 Apache Software Foundation 在美國和/或其他國家的商標或註冊商標。Java™、Java™ SE、Java™ EE 和 OpenJDK™ 是 Oracle 和/或其關聯公司的商標。Kubernetes® 是 Linux Foundation 在美國和其他國家的註冊商標。Linux® 是 Linus Torvalds 在美國和其他國家的註冊商標。Windows® 和 Microsoft® Azure 是 Microsoft Corporation 的註冊商標。“AWS”和“Amazon Web Services”是 Amazon.com Inc. 或其關聯公司的商標或註冊商標。所有其他商標和版權均為其各自所有者的財產,僅用於資訊目的。其他名稱可能是其各自所有者的商標。

    在所有 Spring 文件中搜索