首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 綜合教學

Spring MVC 入門實戰:從零搭建第一個 HelloWorld 到核心問題全景認知

     編輯:Java 綜合教學

1. 核心 Jar 包

Jar包列表 Spring MVC 基礎包 + Servlet API + 日誌門面。

2. web.xml 配置 DispatcherServlet

<servlet>
    <servlet-name>dispatcherServlet</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>/WEB-INF/springmvc-servlet.xml</param-value>
    </init-param>
</servlet>
<servlet-mapping>
    <servlet-name>dispatcherServlet</servlet-name>
    <url-pattern>*.action</url-pattern>
</servlet-mapping>

關鍵點:url-pattern 定義攔截範圍,contextConfigLocation 指定配置文件位置。

3. Spring MVC 配置文件

<context:component-scan base-package="com.demo.handler"/>
<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    <property name="prefix" value="/WEB-INF/views/"/>
    <property name="suffix" value=".jsp"/>
</bean>

視圖解析邏輯:prefix + viewName + suffix → /WEB-INF/views/hello.jsp

4. Controller 實現

@Controller
public class HelloWorldHandler {
    @RequestMapping("/hello")
    public String hello() {
        System.out.println("hello world...");
        return "hello";  // 視圖名
    }
}

5. 運行驗證

訪問 https://localhost:8080/project/hello.action → 控制台輸出 "hello world..." → 頁面顯示 hello.jsp 內容。

Spring MVC 核心問題全景(學習路線圖)

核心問題域關鍵技術點
原生 Servlet 資源獲取HttpServletRequest、HttpServletResponse、HttpSession 注入
請求映射@RequestMapping 六大屬性、RESTful 風格
參數綁定@RequestParam、@PathVariable、@RequestBody、對象自動綁定
模型數據傳遞Model、ModelMap、@ModelAttribute、@SessionAttributes
數據格式化@DateTimeFormat、@NumberFormat、Formatter、ConversionService
數據校驗JSR-303 @Valid、BindingResult、自定義 Validator
返回值處理String、ModelAndView、@ResponseBody、ResponseEntity、異步 Callable/DeferredResult
視圖渲染JSP、Thymeleaf、FreeMarker、內容協商 ViewResolver 鏈
防重複提交Token 模式、@RequestMapping(method=POST) + Session 驗證
文件上傳/下載MultipartFile、MultipartResolver、大文件斷點續傳
運行流程與生命週期DispatcherServlet → HandlerMapping → HandlerAdapter → HandlerInterceptor → ViewResolver

對比 Struts2 優勢

  • 基於 Servlet API 設計,輕量、性能優
  • 註解驅動,配置極簡
  • 與 Spring 生態無縫整合(事務、安全、數據訪問)
  • RESTful 原生支持
  • 異步處理、WebSocket、Reactive 堆疊完善

學習建議

按上表 11 大問題域逐個攻克,理解 DispatcherServlet 核心流程,掌握擴展點(HandlerInterceptor、HandlerMethodArgumentResolver、HandlerMethodReturnValueHandler 等),才能真正駕馭 Spring MVC。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved