検索
ホームページ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アプリケーションにどのように利益をもたらしますか?プラットフォームの独立性は、エンタープライズレベルのJavaアプリケーションにどのように利益をもたらしますか?May 03, 2025 am 12:23 AM

Javaは、プラットフォームの独立性により、エンタープライズレベルのアプリケーションで広く使用されています。 1)プラットフォームの独立性は、Java Virtual Machine(JVM)を介して実装されているため、Javaをサポートする任意のプラットフォームでコードを実行できます。 2)クロスプラットフォームの展開と開発プロセスを簡素化し、柔軟性とスケーラビリティを高めます。 3)ただし、パフォーマンスの違いとサードパーティライブラリの互換性に注意を払い、純粋なJavaコードやクロスプラットフォームテストの使用などのベストプラクティスを採用する必要があります。

プラットフォームの独立性を考慮して、JavaはIoT(Thingのインターネット)デバイスの開発においてどのような役割を果たしますか?プラットフォームの独立性を考慮して、JavaはIoT(Thingのインターネット)デバイスの開発においてどのような役割を果たしますか?May 03, 2025 am 12:22 AM

javaplaysasificanificantduetduetoitsplatformindepence.1)itallowscodetobewrittendunonvariousdevices.2)java'secosystemprovidesutionforiot.3)そのセキュリティフィートルセンハンス系

Javaでプラットフォーム固有の問題に遭遇したシナリオと、どのように解決したかを説明してください。Javaでプラットフォーム固有の問題に遭遇したシナリオと、どのように解決したかを説明してください。May 03, 2025 am 12:21 AM

TheSolution to HandlefilepathsaCrosswindossandlinuxinjavaistousepaths.get()fromthejava.nio.filepackage.1)usesystem.getProperty( "user.dir")およびhearterativepathtoconstructurctthefilepath.2)

開発者にとってJavaのプラットフォーム独立性の利点は何ですか?開発者にとってJavaのプラットフォーム独立性の利点は何ですか?May 03, 2025 am 12:15 AM

java'splatformentepenceissificAntiveSifcuseDeverowsDevelowSowRitecodeOdeonceantoniTONAnyPlatformwsajvm.これは「writeonce、runanywhere」(wora)adportoffers:1)クロスプラットフォームの複雑性、deploymentacrossdiferentososwithusisues; 2)re

さまざまなサーバーで実行する必要があるWebアプリケーションにJavaを使用することの利点は何ですか?さまざまなサーバーで実行する必要があるWebアプリケーションにJavaを使用することの利点は何ですか?May 03, 2025 am 12:13 AM

Javaは、クロスサーバーWebアプリケーションの開発に適しています。 1)Javaの「Write and、Run Averywhere」哲学は、JVMをサポートするあらゆるプラットフォームでコードを実行します。 2)Javaには、開発プロセスを簡素化するために、SpringやHibernateなどのツールを含む豊富なエコシステムがあります。 3)Javaは、パフォーマンスとセキュリティにおいて優れたパフォーマンスを発揮し、効率的なメモリ管理と強力なセキュリティ保証を提供します。

JVMは、Javaの「Write and、Run Anywhere」(Wora)機能にどのように貢献しますか?JVMは、Javaの「Write and、Run Anywhere」(Wora)機能にどのように貢献しますか?May 02, 2025 am 12:25 AM

JVMは、バイトコード解釈、プラットフォームに依存しないAPI、動的クラスの負荷を介してJavaのWORA機能を実装します。 2。標準API抽象オペレーティングシステムの違い。 3.クラスは、実行時に動的にロードされ、一貫性を確保します。

Javaの新しいバージョンは、プラットフォーム固有の問題にどのように対処しますか?Javaの新しいバージョンは、プラットフォーム固有の問題にどのように対処しますか?May 02, 2025 am 12:18 AM

Javaの最新バージョンは、JVMの最適化、標準的なライブラリの改善、サードパーティライブラリサポートを通じて、プラットフォーム固有の問題を効果的に解決します。 1)Java11のZGCなどのJVM最適化により、ガベージコレクションのパフォーマンスが向上します。 2)Java9のモジュールシステムなどの標準的なライブラリの改善は、プラットフォーム関連の問題を削減します。 3)サードパーティライブラリは、OpenCVなどのプラットフォーム最適化バージョンを提供します。

JVMによって実行されたバイトコード検証のプロセスを説明します。JVMによって実行されたバイトコード検証のプロセスを説明します。May 02, 2025 am 12:18 AM

JVMのバイトコード検証プロセスには、4つの重要な手順が含まれます。1)クラスファイル形式が仕様に準拠しているかどうかを確認し、2)バイトコード命令の有効性と正確性を確認し、3)データフロー分析を実行してタイプの安全性を確保し、検証の完全性とパフォーマンスのバランスをとる。これらの手順を通じて、JVMは、安全で正しいバイトコードのみが実行されることを保証し、それによりプログラムの完全性とセキュリティを保護します。

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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 英語版

SublimeText3 英語版

推奨: Win バージョン、コードプロンプトをサポート!

SublimeText3 中国語版

SublimeText3 中国語版

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

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

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

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

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