1.サーバーを起動し、いくつかの設定ファイルをロードします
DispatcherServletオブジェクトが作成されます
springmvc.xmlがロードされます
HelloControllerオブジェクトが作成されます
InternalResourceViewResolverビューリゾルバーオブジェクトが作成され
、mvcの注釈サポートを有効にします
対応するコード
最初のWebサイトページindex.jsp
<%- IntelliJ IDEAにより作成。 ユーザー:ASUSの 日付:2020年までに / 4 / 11 時間:12:56 に変更するには、このテンプレートを使用するファイルを| 設定| ファイルテンプレート。 -%> <%@ page contentType = " text / html; charset = UTF-8 " language = " java "%> <html> <head> <title>タイトル</ title> </ head> <body> < H3>入门程序</ H3> <a href= " こんにちは "> </ html>
springmvc.xml構成ファイル:注釈サポートの有効化、注釈Beanスキャンパッケージの有効化、ビューパーサーオブジェクトのインスタンス化、
<?xml version = " 1.0 " encoding = " UTF-8 "?> <beans xmlns = " http://www.springframework.org/schema/beans " xmlns:mvc = " http://www.springframework.org / schema / mvc " xmlns:context = " http://www.springframework.org/schema/context " xmlns:xsi = " http://www.w3.org/2001/XMLSchema-instance " xsi:schemaLocation = " http:// www.springframework。org / schema / beans http://www.springframework.org/schema/beans/spring-beans.xsd http:// www.springframework.org/schema/mvc http:// www.springframework.org/schema/mvc/spring-mvc.xsd http:/ / www.springframework.org/schema/context http:// www.springframework.org/schema/context/spring-context.xsd "> <!-注釈スキャンパッケージを開く-> <context:コンポーネント-スキャンベース -package = " cn.cast " /> <!-View resolver object-> <bean id = " internalResourceViewResolver " class = "org.springframework.web.servlet.view.InternalResourceViewResolver " > <property name = " prefix " value = " / WEB-INF / pages / " > </ property> <property name = " suffix " value = " .jsp " > </ property> </ bean> <!-开启SpringMVCフレーム架注解的サポート-> <mvc:annotation-driven /> </ beans>
web.xml構成ファイル:DispatcherServlet(インターセプター)とそのプロパティの構成
<!DOCTYPE web- app PUBLIC " -// Sun Microsystems、Inc.//DTD Web Application 2.3 // EN " " http://java.sun.com/dtd/web-app_2_3.dtd " > <web-app > <display-name> Archetype Created Web Application </ display-name> <servlet> <servlet-name> dispatcherServlet </ servlet-name> <servlet- class > org.springframework.web.servlet.DispatcherServlet </ servlet- class > <!-加载配置文件-> <init-param> <param-name> contextConfigLocation </ param-name> <param-value> classpath:springmvc.xml </ param-value> </ init-param> <!-サーバーの起動時に設定ファイルをロードします-> <load-on-startup> 1 </ load-on-startup> </ servlet> <servlet-mapping> <servlet-name> dispatcherServlet </ servlet-name> <!-拦切所有请求-> <url- pattern> / </ url-pattern> </ servlet-mapping> </ web-app>
HelloContollerクラス:/ helloリクエストの処理に使用されます
パッケージcn.cast.controller; / * * *コントローラークラス * / import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class HelloController { / * * *リクエストマッピング注釈:パス= /ハロー * /ハローリクエストパスは、メソッドが実行なる * @return * / (パス@RequestMappingを = " ハロー/ " ) パブリック文字列のsayHello(){ システム。OUT .println(" ハローSPRINGMVC " ) ; 戻ります "成功" ; } }
success.jsp:リクエストの処理後に返された応答ページ
<%- IntelliJ IDEAにより作成。 ユーザー:ASUSの 日付:2020年までに/ 4 / 11 時間:13 :15 には、このテンプレートを使用するファイルを変更します| 設定| ファイルテンプレート。 - %> <%@ページcontentType = " text / html; charset = UTF-8 " language = " java " %> < html > < head > < title > Title </ title > </ head> < body > < h3 >入门成功</ h3 > </ body > </ html >
2.バックグラウンド処理リクエスト
バックグラウンドで<a href="hello"> 12 </a>リクエストを受け取りました
->すべてのリクエストはDispatcherServletによってインターセプトされます
->インターセプターがHelloControllerのsayHello(/ helloリクエストに応答するように設定済み)メソッドを呼び出す
->メソッドは実行後に「成功」を返します
-> Interceptorは、ビューパーサーとプレフィックスとサフィックスを使用して「成功」を解析し、ページをsuccess.jspにジャンプさせます。
->返される対応するパッケージは、このsuccess.jspです。