ホームページ Java &#&チュートリアル SpringMVC環境構築の詳細な手順

SpringMVC環境構築の詳細な手順

Sep 26, 2018 pm 02:45 PM
springmvc

この記事では SpringMVC 環境を構築する詳細なプロセスを紹介します。必要な方は参考にしていただければ幸いです。

Spring MVC は、プレゼンテーション層の MVC 設計概念に基づいた優れた Web フレームワークを提供しており、現在最も主流の MVC フレームワークの 1 つです。

Spring 3.0以降はStruts2を完全に上回り、最高のMVCフレームワークと呼ばれています。 SpringMVCを学ぶと、Struts2がもたらす残酷さを一瞬で感じることになるでしょう。

Spring MVC は一連の MVC アノテーションを使用して POJO をリクエストを処理するコントローラーにします。インターフェイスを実装する必要はなく、結合度は低くなります。

そして、Spring MVC は休符スタイルを適切にサポートしています。 。

他の MVC フレームワークよりも拡張性と柔軟性に優れた、疎結合のプラグイン可能なコンポーネント構造を利用します。

Spring MVC 環境の構築

1) インターフェースメソッドに基づいて MVC 環境を構築します。 MVC を実装するためのコントローラー インターフェイスの実装

2) Spring 3.0 以降のバージョンでは、アノテーション方式に基づいて、アノテーションを使用することで従来の MVC 構成が大幅に簡素化され、柔軟性と保守性が大幅に向上します。

SpringMVC を実装するには、最初のステップは対応する jar パッケージを入力する必要があります。

次に Struts2 を使用します。また、Web.xml でコア コントローラーを構成します。リクエストをインターセプトするために使用されます。

<!-- 配置SpringMVC的请求的Servlet -->
  <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:applicationContext.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>
ログイン後にコピー

これを見ると、Struts2 よりも数行多いだけで、見覚えがあると思いませんか? init-param は、初期化中にロードされる Spring ファイルです。複数のファイルがある場合は、カンマを使用してそれらを区切ることができます。

load-on-startup は起動時にすぐにロードされます。 /すべてのリクエストをインターセプトします。 (同時に、css と js もインターセプトされます);

次に、Controller

package com.miya.spring.mvc.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
@RequestMapping("/Miya")
public class MiyaHelloController {

    @RequestMapping("/hello")
    public String hello(){
        System.out.println("hello Miya");
        return "/hello";
    }
}
ログイン後にコピー

##@Controller This を記述します。アノテーションはあまり多くする必要はありません。たとえば、コントローラーを宣言します。

@RequestMapping は、スペースを宣言するクラスで定義されています。上記のメソッドでは、リクエスト パスが宣言されています。

文字列とアクセスするパスを返します。このパスはどこにありますか?

<context:component-scan base-package="com.miya.spring.mvc"/>
    
    <!-- 视图解析器 -->
    <bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!-- 前缀 -->
        <property name="prefix" value="/WEB-INF/views"/>
        <!-- 后缀 -->
        <property name="suffix" value=".jsp"/>
    </bean>
ログイン後にコピー

Spring XML 構成では、最初にすべての注釈をスキャンしてから、ビュー パーサーを構成します。

その hello を返すとき、ビューにアクセスするためのプレフィックス result(hello) サフィックスになります。

次に、index.jsp で直接実行してみましょう。

<%
response.sendRedirect(request.getContextPath() + "/Miya/hello");    
%>
ログイン後にコピー

request.getContextPath() は、Web プロジェクトのルート パス、webContent (MyEclipse の webRoot) を取得します。これで、名前空間 Miya の後にメソッド リクエスト パス

hello が定義されていることがわかります。最後にアクセスしたアドレス http://localhost:8080/SpringMvcDemo1/Miya/hello は、ファイル WEB-INF/views/hello.jsp にアクセスしました。そして、このリクエストは依然として休息スタイルのリクエストです。

ここまで来ると、Struts2 よりもはるかに便利であることがわかります。Struts2 のすべての構成リクエストは、多くのアクションなどを構成するために Struts2 に送信する必要があり、場合によっては数千行になることもあります。 sturts ファイルでは、私は年をとりすぎているので、リクエストには 30 分かかりました。

これを実装する別の方法は、Spring が提供するコントローラー インターフェイスを実装し、インターフェイス内のメソッドを書き直すことです。

package com.miya.spring.mvc.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class MiyaWordController implements Controller{
    @Override
    public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.setViewName("/hello");
        return modelAndView;
    }
}
ログイン後にコピー

ビューは ModelAndView で設定できます。次に、Spring XML で Bean を設定する必要があります。 name はリクエストのパス、class は指定されたコントローラ クラスです。

<bean name="/Miya/word" class="com.miya.spring.mvc.controller.MiyaWordController"></bean>
ログイン後にコピー
注: プロジェクト内のすべてのリクエストをインターセプトするため、画像、スタイル、JS がすべてレポートされます。 404.春にできる 外部リソース ファイルが XML に導入されるため、この方法でインターフェイスを実装すると結合度が高くなりすぎ、各関数をクラス内に記述する必要があり、コードが肥大化してしまいます。そのため、現在はアノテーションを使用することが推奨されています。また、多くのフレームワークがアノテーション メソッドをサポートしており、構文が単純なのでコードが簡潔になります。

うわー

以上がSpringMVC環境構築の詳細な手順の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

SpringBootとSpringMVCの比較と差異分析 SpringBootとSpringMVCの比較と差異分析 Dec 29, 2023 am 11:02 AM

SpringBoot と SpringMVC はどちらも Java 開発で一般的に使用されるフレームワークですが、それらの間には明らかな違いがいくつかあります。この記事では、これら 2 つのフレームワークの機能と使用法を調べ、その違いを比較します。まず、SpringBoot について学びましょう。 SpringBoot は、Spring フレームワークに基づいたアプリケーションの作成と展開を簡素化するために、Pivo​​tal チームによって開発されました。スタンドアロンの実行可能ファイルを構築するための高速かつ軽量な方法を提供します。

SpringBoot と SpringMVC の違いは何ですか? SpringBoot と SpringMVC の違いは何ですか? Dec 29, 2023 am 10:46 AM

SpringBoot と SpringMVC の違いは何ですか? SpringBoot と SpringMVC は、Web アプリケーションを構築するための 2 つの非常に人気のある Java 開発フレームワークです。これらは別々に使用されることが多いですが、両者の違いは明らかです。まず、SpringBoot は Spring フレームワークの拡張版または強化版とみなすことができます。 Spring アプリケーションの初期化と構成プロセスを簡素化し、開発者を支援するように設計されています。

SpringBoot と SpringMVC の違いは何ですか? SpringBoot と SpringMVC の違いは何ですか? Dec 29, 2023 pm 05:19 PM

SpringBootとSpringMVCはJava開発でよく使われるフレームワークで、どちらもSpringフレームワークで提供されていますが、機能や使用方法にいくつかの違いがあります。この記事では、SpringBootとSpringMVCそれぞれの特徴と違いを紹介します。 1. SpringBoot の特徴: 構成の簡素化: SpringBoot は、構成より規約の原則により、プロジェクトの構成プロセスを大幅に簡素化します。プロジェクトや開発者に必要なパラメータを自動的に設定できます。

springboot と springmvc の違いは何ですか springboot と springmvc の違いは何ですか Jun 07, 2023 am 10:10 AM

springboot と springmvc の違いは、1. 意味の違い、2. 構成の違い、3. 依存関係の違い、4. 開発時間の違い、5. 生産性の違い、6. JAR パッケージ化機能の実装方法の違い、7. バッチ処理の有無です。提供される機能、8. さまざまな機能、9. さまざまなコミュニティおよびドキュメントのサポート、10. デプロイメント記述子が必要かどうか。

spring と springmvc の違いは何ですか spring と springmvc の違いは何ですか Dec 29, 2023 pm 05:02 PM

spring と springmvc の違い: 1. 位置付けと機能、2. コア機能、3. アプリケーション領域、4. 拡張性。詳細な紹介: 1. 位置付けと機能 Spring は、依存関係の注入、アスペクト指向プログラミング、トランザクション管理などの機能を提供する包括的なアプリケーション開発フレームワークであり、エンタープライズ レベルのアプリケーションの開発を簡素化するように設計されており、Spring MVC はそのSpring フレームワーク。そのモジュールは Web アプリケーションの開発に使用され、MVC パターンを実装します。2. コア機能など。

JavaのSpringMVCインターセプターの使い方 JavaのSpringMVCインターセプターの使い方 May 13, 2023 pm 02:55 PM

インターセプタの役割 SpringMVC のインターセプタは、サーブレット開発におけるフィルタに似ており、プロセッサの前処理と後処理に使用されます。インターセプタが一定の順序でチェーン状に接続されており、このチェーンをインターセプタチェーン(InterceptorChain)と呼びます。インターセプトされたメソッドまたはフィールドにアクセスすると、インターセプター チェーン内のインターセプターが、以前に定義された順序で呼び出されます。インターセプターは、AOP のアイデアを具体的に実装したものでもあります。インターセプターとフィルターの違い: フィルター (フィルター) インターセプター (インターセプター) の使用範囲はサーブレット仕様の一部であり、任意の JavaWeb プロジェクトで使用できます。

Java API開発におけるWebサービス処理にSpringMVCを利用する Java API開発におけるWebサービス処理にSpringMVCを利用する Jun 17, 2023 pm 11:38 PM

インターネットの発展に伴い、Web サービスはますます一般的になってきています。アプリケーション プログラミング インターフェイスとして、JavaAPI はさまざまなアプリケーション シナリオに適応するために新しいバージョンを常にリリースしています。 SpringMVC は、人気のあるオープンソース フレームワークとして、Web アプリケーションを簡単に構築するのに役立ちます。この記事では、SpringMVC の設定、コントローラーの作成、使用方法など、JavaAPI 開発における Web サービス処理に SpringMVC を使用する方法を詳しく説明します。

SpringBoot と SpringMVC の類似点と相違点を比較する SpringBoot と SpringMVC の類似点と相違点を比較する Dec 29, 2023 am 08:30 AM

SpringBoot と SpringMVC の類似点と相違点の分析 SpringBoot と SpringMVC は、Java 分野では非常に重要な開発フレームワークです。どちらも Spring フレームワークの一部ですが、使用方法と機能には明らかな違いがいくつかあります。この記事では、SpringBoot と SpringMVC を比較し、それらの類似点と相違点を分析します。まず、SpringBoot について学びましょう。スプリングボー

See all articles