<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                # Spring bean – XML 配置 > 原文: [https://howtodoinjava.com/spring5/core/spring-bean-xml-config/](https://howtodoinjava.com/spring5/core/spring-bean-xml-config/) 在此 **spring bean XML 配置示例**中,學習創建定義和創建 spring bean 以及在任何 spring 應用程序中填充應用程序上下文。 本示例使用 **xml 配置定義 bean** 。 我們將使用 maven 管理 Spring 依賴項,并使用 Eclipse 構建和運行代碼。 ## 1\. Spring Maven 依賴 要創建能夠創建和管理 bean 的 spring 應用程序上下文,我們至少需要三個 maven 依賴項,即`spring-core`,`spring-beans`和`spring-context`。 1. `spring-core`模塊具有與其他 Spring 模塊一起使用所需的最基本的類。 2. `spring-beans`模塊提供了與 Spring bean 一起使用所需的`org.springframework.beans.factory.BeanFactory`接口。 3. `spring-context`模塊提供`org.springframework.context.ApplicationContext`接口,該接口可啟用其他功能,例如[消息資源](https://howtodoinjava.com/spring/spring-mvc/spring-mvc-internationalization-i18n-and-localization-i10n-example/), [AOP](https://howtodoinjava.com/spring-aop-tutorial/) 功能,特定類型的應用程序上下文和[ bean 生命周期](https://howtodoinjava.com/spring/spring-core/spring-bean-life-cycle/)事件監聽器。 `pom.xml` ```java <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd; <modelVersion>4.0.0</modelVersion> <groupId>com.howtodoinjava.spring.webmvc</groupId> <artifactId>SpringDemos</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>SpringDemos</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>5.2.0.RELEASE</spring.version> </properties> <dependencies> <!-- Spring Dependencies --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-beans</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> </dependencies> </project> ``` ## 2\. xml 配置中的 Spring bean 定義 #### 2.1. 具有 bean 定義的單個配置文件 您可以在單個 xml 文件中定義所有 **SpringBean** 及其傳遞依賴項。 此 xml 文件可用于**創建應用程序上下文**。 `beans.xml` ```java <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="operations" class="com.howtodoinjava.spring.beans.Operations"></bean> <bean id="employee" class="com.howtodoinjava.spring.beans.Employee"></bean> <bean id="department" class="com.howtodoinjava.spring.beans.Department"></bean> </beans> ``` #### 2.2. 在多個配置文件中定義 bean 并導入到主文件中 該方法在編寫**模塊化代碼**時更有用。 您可以在單獨的 xml 文件中定義 bean,然后將文件導入主 xml 文件。 `employee.xml` ```java <beans> <bean id="employee" class="com.howtodoinjava.spring.beans.Employee"></bean> </beans> ``` `department.xml` ```java <beans> <bean id="department" class="com.howtodoinjava.spring.beans.Department"></bean> </beans> ``` `beans.xml` ```java <?xml version="1.0" encoding="UTF-8"?> <beans> <import resource="employee.xml"/> <import resource="department.xml"/> <bean id="operations" class="com.howtodoinjava.spring.beans.Operations"></bean> </beans> ``` ## 3\. Spring bean 示例 要**創建[`ApplicationContext`](https://docs.spring.io/spring-framework/docs/current/javadoc-api/org/springframework/context/ApplicationContext.html)**,我們可以使用它作為可用實現的一種特定實現,例如 `ClassPathXmlApplicationContext`,`FileSystemXmlApplicationContext`,`StaticApplicationContext`,`XmlWebApplicationContext`等。 我們將需要將 **bean 配置文件名稱作為使用類的構造函數參數**傳遞。 不要忘記將文件歸檔在`classpath`或[資源文件夾](https://howtodoinjava.com/java/io/read-file-from-resources-folder/)中。 `Main.java` ```java import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; public class XmlConfigExample { public static void main( String[] args ) { @SuppressWarnings("resource") ApplicationContext ctx = new ClassPathXmlApplicationContext( "com/howtodoinjava/core/demo/beans/beans.xml" ); Employee employee = ctx.getBean(Employee.class); Department department = ctx.getBean(Department.class); Operations operations = ctx.getBean(Operations.class); System.out.println(department); System.out.println(employee); operations.helloWorld(); } } ``` 程序輸出: `Console` ```java Jan 02, 2018 3:10:27 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions INFO: Loading XML bean definitions from class path resource [beans.xml] Jan 02, 2018 3:10:27 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions INFO: Loading XML bean definitions from class path resource [employee.xml] Jan 02, 2018 3:10:27 PM org.springframework.beans.factory.xml.XmlBeanDefinitionReader loadBeanDefinitions INFO: Loading XML bean definitions from class path resource [department.xml] Employee [id=0, name=null] Department [id=0, name=null] Hello World !! ``` ## 4\. 示例中使用的項目結構和其他類 #### 4.1. 項目結構 ![Spring XML Config Project Structure](https://img.kancloud.cn/8a/aa/8aaa2e0f88414fce0da07e3376106e07_348x396.jpg) Spring XML Config Project Structure #### 4.2. Bean `Employee.java` ```java @Getter @Setter @ToString public class Employee { private long id; private String name; } ``` `Department.java` ```java @Getter @Setter @ToString public class Department { private long id; private String name; } ``` `Operations.java` ```java public class Operations { public void helloWorld(){ System.out.println("Hello World !!"); } } ``` 在評論部分中,將您與基于 **Spring XML 配置**基于 **spring 容器**有關的問題交給我。 學習愉快! 有關: [Spring Java 配置示例](https://howtodoinjava.com/spring5/core/spring-bean-java-config/) [Spring Boot2 配置示例](https://howtodoinjava.com/spring-boot2/springbootapplication-auto-configuration/) [下載源碼](https://github.com/lokeshgupta1981/spring-core/tree/master/src/main/java/com/howtodoinjava/core/demo/beans)
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看