検索
ホームページJava&#&チュートリアルSpring フレームワークの簡単な使い方の紹介

この記事では Spring フレームワークの簡単な使用方法を紹介します。必要な方は参考にしていただければ幸いです。

Spring フレームワークとしての主な機能は、アプリ (アプリケーション) の機能を実現する多数のクラスを管理することです。これらのクラスはアプリ全体の基礎およびバックボーンであり、Bean と呼ばれます。

Bean (ビジネス機能を実行するクラスの集まり) を管理するには、それらを直接新規作成することはできず、統合されたスケジューリングが欠如しています。したがって、Spring は .xml 設定ファイルを媒体として使用し、IoC (Inversion of Control) をツールとして使用して、これらの Bean を Spring コンテナに転送して統合管理します。

これに基づいて、Bean をコンテナにスローするには、少なくとも 2 つの部分が必要です。

Bean に対応するクラスの定義

間接的に制御される .xml構成ファイル

2 つの部分が必要な理由は簡単に理解できます。まず、Bean 自体の定義が必要です。次に、Spring コンテナに Bean を受け入れる方法を指示する必要があります。これは .xml ファイルで説明されています。

たとえば、管理したい Bean は HelloWorld という名前で、その 2 つの部分は applicationContext-src.xml:

<?xml  version="1.0" encoding="UTF-8"?>
<beans>
    
    <bean>        
        <property></property>
    </bean>  

</beans>

と HelloWorld.java:

public class HelloWorld {
    private String message;     
    
    public void setMessage(String message) {       
        this.message  = message;    
    }     
    
    public void getMessage() {       
        System.out.println("Your Message : " + message);    
    } 
}

です。これら 2 つの部分により、Spring コンテナは HelloWorld という名前の Bean を正しく受け取ることができます。

この Bean を使用したい場合は、もちろん HelloWorld Bean に直接触れることはできません。代わりに、そのエージェントを管理する Spring コンテナーを通じて Bean を取得し、この Bean を使用してサービスを提供する必要があります。あなた自身。

たとえば、MainApp.java という名前のクラスは、HelloWorld Bean のサービスを使用する必要があります。これを行うことができます。

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class MainApp {    
    
    @SuppressWarnings("resource")
    public static void main(String[] args) {       
        ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext-src.xml");        
        HelloWorld obj = (HelloWorld) context.getBean("helloWorld");        
        obj.getMessage();    
    }
}

ここには 2 つの部分があります:

まず、設定 .xml ファイルの場所に従って Spring コンテナを取得します。これは、ここでは Context です。これは、いくつかの Spring コンテナの中で最も有名なスポークスマンとして理解できます。

このスポークスマンを設定した後は、スポークスマンに必要な Bean HelloWorld を自然に問い合わせることができるため、context.getBean() メソッドを通じて必要な Bean を取得できます。

Bean を入手したら、そのまま使用できます。

Spring フレームワークの出発点は直感的であることがわかります。これは、一連の機能クラス (Bean) のプロキシとして機能し、これらの Bean を管理用の独自のコンテナーに統合することです。 Bean を使用する必要がある他のクラスは、エージェントを通じて Bean を取得する必要があります。

議論する価値のある質問は、上記は非常に直観的で理解しやすいものですが、一般的な Java Web 開発では ApplicationContext に関する宣言が非常に少ないのはなぜでしょうか?

その理由は、通常の J2EE 開発では、Spring コンテキストの宣言がユーザー コード内で直接完了せず、web.xml で構成されているためです:

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/daoContext.xml /WEB-INF/applicationContext.xml</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

ここでは ContextLoaderListener の助けを借りてApplicationContext を Web アプリに登録します。

もう 1 つのより重要な考慮事項は次のとおりです。

コード内で ApplicationContext を直接使用する必要はありませんが、Context を使用するために構成ファイルと IoC を同じように使用する必要があります。



以上がSpring フレームワークの簡単な使い方の紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事はsegmentfault思否で複製されています。侵害がある場合は、admin@php.cn までご連絡ください。
高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?高度なJavaプロジェクト管理、自動化の構築、依存関係の解像度にMavenまたはGradleを使用するにはどうすればよいですか?Mar 17, 2025 pm 05:46 PM

この記事では、Javaプロジェクト管理、自動化の構築、依存関係の解像度にMavenとGradleを使用して、アプローチと最適化戦略を比較して説明します。

適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?適切なバージョン化と依存関係管理を備えたカスタムJavaライブラリ(JARファイル)を作成および使用するにはどうすればよいですか?Mar 17, 2025 pm 05:45 PM

この記事では、MavenやGradleなどのツールを使用して、適切なバージョン化と依存関係管理を使用して、カスタムJavaライブラリ(JARファイル)の作成と使用について説明します。

カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?カフェインやグアバキャッシュなどのライブラリを使用して、Javaアプリケーションにマルチレベルキャッシュを実装するにはどうすればよいですか?Mar 17, 2025 pm 05:44 PM

この記事では、カフェインとグアバキャッシュを使用してJavaでマルチレベルキャッシュを実装してアプリケーションのパフォーマンスを向上させています。セットアップ、統合、パフォーマンスの利点をカバーし、構成と立ち退きポリシー管理Best Pra

キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPA(Java Persistence API)を使用するにはどうすればよいですか?Mar 17, 2025 pm 05:43 PM

この記事では、キャッシュや怠zyなロードなどの高度な機能を備えたオブジェクトリレーショナルマッピングにJPAを使用することについて説明します。潜在的な落とし穴を強調しながら、パフォーマンスを最適化するためのセットアップ、エンティティマッピング、およびベストプラクティスをカバーしています。[159文字]

Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Javaのクラスロードメカニズムは、さまざまなクラスローダーやその委任モデルを含むどのように機能しますか?Mar 17, 2025 pm 05:35 PM

Javaのクラスロードには、ブートストラップ、拡張機能、およびアプリケーションクラスローダーを備えた階層システムを使用して、クラスの読み込み、リンク、および初期化が含まれます。親の委任モデルは、コアクラスが最初にロードされ、カスタムクラスのLOAに影響を与えることを保証します

分散コンピューティングにJavaのRMI(リモートメソッドの呼び出し)を使用するにはどうすればよいですか?分散コンピューティングにJavaのRMI(リモートメソッドの呼び出し)を使用するにはどうすればよいですか?Mar 11, 2025 pm 05:53 PM

この記事では、分散アプリケーションを構築するためのJavaのリモートメソッドの呼び出し(RMI)について説明します。 インターフェイスの定義、実装、レジストリのセットアップ、およびクライアント側の呼び出しを詳述し、ネットワークの問題やセキュリティなどの課題に対処します。

ネットワーク通信にJavaのソケットAPIを使用するにはどうすればよいですか?ネットワーク通信にJavaのソケットAPIを使用するにはどうすればよいですか?Mar 11, 2025 pm 05:53 PM

この記事では、ネットワーク通信のためのJavaのソケットAPI、クライアントサーバーのセットアップ、データ処理、リソース管理、エラー処理、セキュリティなどの重要な考慮事項をカバーしています。 また、パフォーマンスの最適化手法も調査します

Javaでカスタムネットワークプロトコルを作成するにはどうすればよいですか?Javaでカスタムネットワークプロトコルを作成するにはどうすればよいですか?Mar 11, 2025 pm 05:52 PM

この記事では、カスタムJavaネットワーキングプロトコルの作成を詳述しています。 プロトコルの定義(データ構造、フレーミング、エラー処理、バージョン化)、実装(ソケットを使用)、データシリアル化、およびベストプラクティス(効率、セキュリティ、メンテナ

See all articles

ホット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ヘンタイを無料で生成します。

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

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

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。