Spring learning_Spring開発Webプロジェクト_Split Web構成ファイル_ServletコンテナーとIOCブリッジ

Spring開発Webプロジェクト

Javaに唯一のエントリmain()関数があるため、IOCコンテナはJavaプログラムで直接初期化できます。

//初始化spring容器,加载配置文件
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml");

Webプログラムには統一されたエントリポイントはありません。IOCを使用するたびに初期化するのはパフォーマンスの無駄です。
アイデア:リスナーを通じて、サーバーを起動するたびにIOCコンテナーを初期化します。
春の開発Webプロジェクト:
思いつくすべての人がそれを考えました。前任者から与えられたメソッドを直接呼び出すだけです。Spring-web.jarを
ダウンロードします。https//mvnrepository.com/artifact/org.springframework/spring-web/5.1.3.RELEASE
web.xmlファイル:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">
    <!--指定IOC容器,contextConfigLocation名固定-->
    <context-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:applicationContext.xml</param-value>
    </context-param>

    <listener>
        <!--配置监听器,初始化IOC容器-->
        <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
    </listener>
</web-app>

srcディレクトリに新しいapplicationContext.xmlファイルを作成します。applicationContext.xmlはIOCコンテナです。

Web構成ファイルを分割する

1.機能に応じて分割2.
3層構造に応じ
分割分割は簡単、どのように結合しますか?
ここに画像の説明を挿入

サーブレットコンテナとIOC間のブリッジ

//获取IOC容器到servlet容器
    @Override
    public void init() throws ServletException {
        ApplicationContext context = WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());
        context.getbean("对象");
    }

心が花や木のように

おすすめ

転載: blog.csdn.net/nbcsdn/article/details/99644506