最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關于Spring工廠方法注入屬性方式

 更新時間:2025年04月11日 10:57:52   作者:長不大的大灰狼  
這篇文章主要介紹了關于Spring工廠方法注入屬性方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

靜態(tài)工廠注入

在 Spring 中,也可以使用靜態(tài)工廠的方式實例化 Bean。此種方式需要提供一個靜態(tài)工廠方法創(chuàng)建 Bean 的實例。

① 創(chuàng)建實體類

public class Person{
	String name;
	public void setName(String name){
		this.name = name;
    }
}

② 創(chuàng)建靜態(tài)工廠類

創(chuàng)建一個名為 MyBeanFactory 的類,并在該類中創(chuàng)建一個名為 createBean() 的靜態(tài)方法,用于創(chuàng)建 Bean 的實例,如下所示。

public class MyBeanFactory {
    // 創(chuàng)建Bean實例的靜態(tài)工廠方法
    public static Person createBean() {
    	Person person = new Person();
    	person.setName("glp");
        return person;
    }
}

③ 創(chuàng)建 Spring 配置文件

創(chuàng)建 Spring 的配置文件 applicationContext.xml。

<?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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.2.xsd">
    
    <bean id="person" class="com.mengma.instance.static_factory.MyBeanFactory"
        factory-method="createBean" />
        
</beans>

上述代碼中,定義了一個 id 為 person 的 Bean,其中 class 屬性指定了其對應的工廠實現(xiàn)類為 MyBeanFactory,而 factory-method 屬性用于告訴 Spring 容器調用工廠類中的 createBean() 方法獲取 Bean 的實例。

實例工廠注入

在 Spring 中,還有一種實例化 Bean 的方式就是采用實例工廠,直接在成員方法中創(chuàng)建 Bean 的實例。

同時,在配置文件中,需要實例化的 Bean 也不是通過 class 屬性直接指向其實例化的類,而是通過 factory-bean 屬性配置一個實例工廠,然后使用 factory-method 屬性確定使用工廠中的哪個方法。

① 創(chuàng)建實體類

public class Person{
	String name;
	public void setName(String name){
		this.name = name;
    }
}

② 創(chuàng)建實例工廠類

創(chuàng)建一個名為 MyBeanFactory 的類。

public class MyBeanFactory {
    public MyBeanFactory() {
        System.out.println("person3工廠實例化中");
    }
    // 創(chuàng)建Bean的方法
    public Person createBean() {
        Person person = new Person();
    	person.setName("cbj");
        return person;
    }
}

③ 創(chuàng)建 Spring 配置文件

創(chuàng)建 Spring 的配置文件 applicationContext.xml,如下所示。

<?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:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans-3.2.xsd">
    
    <!-- 配置實例工廠 -->
    <bean id="myBeanFactory" class="com.mengma.instance.factory.MyBeanFactory" />
    
    <!-- factory-bean屬性指定一個實例工廠,factory-method屬性確定使用工廠中的哪個方法 -->
    
    <bean id="person" factory-bean="myBeanFactory" factory-method="createBean" />
    
</beans>

上述代碼中,首先配置了一個實例工廠 Bean,然后配置了需要實例化的 Bean。

在 id 為 person的 Bean 中,使用 factory-bean 屬性指定一個實例工廠,該屬性值就是實例工廠的 id 屬性值。

使用 factory-method 屬性確定使用工廠中的 createBean() 方法。

總結

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • Springboot jdbctemplate整合實現(xiàn)步驟解析

    Springboot jdbctemplate整合實現(xiàn)步驟解析

    這篇文章主要介紹了Springboot jdbctemplate整合實現(xiàn)步驟解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • Spring Boot配置元數(shù)據(jù)方法教程

    Spring Boot配置元數(shù)據(jù)方法教程

    這篇文章主要介紹了Spring Boot配置元數(shù)據(jù)方法教程,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • Spring整合Mybatis思路梳理總結

    Spring整合Mybatis思路梳理總結

    MyBatis 是一款優(yōu)秀的持久層框架,它支持自定義 SQL、存儲過程以及高級映射。MyBatis 免除了幾乎所有的 JDBC 代碼以及設置參數(shù)和獲取結果集的工作,本篇文章帶你了解Spring整合Mybatis的思路
    2022-02-02
  • java設計模式之工廠方法模式

    java設計模式之工廠方法模式

    這篇文章主要為大家詳細介紹了java設計模式之工廠方法模式,什么是java工廠方法模式,感興趣的小伙伴們可以參考一下
    2016-08-08
  • spring事物傳播propagation類別含義詳解

    spring事物傳播propagation類別含義詳解

    這篇文章主要介紹了spring事物傳播propagation類別含義詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-12-12
  • MyBatis動態(tài)SQL與MyBatis Generator插件使用教程

    MyBatis動態(tài)SQL與MyBatis Generator插件使用教程

    動態(tài)SQL是Mybatis的強大特性之?,能夠完成不同條件下不同的sql拼接,本文給大家介紹MyBatis動態(tài)SQL與MyBatis Generator插件使用,感興趣的朋友跟隨小編一起看看吧
    2026-03-03
  • 基于@AllArgsConstructor與@Value共用的問題解決

    基于@AllArgsConstructor與@Value共用的問題解決

    這篇文章主要介紹了基于@AllArgsConstructor與@Value共用的問題解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java使用OpenCV進行圖像處理的示例代碼

    Java使用OpenCV進行圖像處理的示例代碼

    OpenCV是一個開源的計算機視覺庫,廣泛應用于圖像處理、機器學習和計算機視覺等領域,盡管OpenCV主要使用C/C++進行開發(fā),但它也為Java提供了綁定,使得Java開發(fā)者能夠利用其強大的圖像處理功能,在本篇文章中,我們將詳細介紹如何在Java中使用OpenCV,需要的朋友可以參考下
    2025-03-03
  • LambdaQueryWrapper的實現(xiàn)原理分析和lambda的序列化問題

    LambdaQueryWrapper的實現(xiàn)原理分析和lambda的序列化問題

    這篇文章主要介紹了LambdaQueryWrapper的實現(xiàn)原理分析和lambda的序列化問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教。
    2022-01-01
  • 淺談maven的jar包和war包區(qū)別 以及打包方法

    淺談maven的jar包和war包區(qū)別 以及打包方法

    下面小編就為大家分享一篇淺談maven的jar包和war包區(qū)別 以及打包方法,具有很好的參考價值,希望對大家有所幫助
    2017-11-11

最新評論

象山县| 都安| 富川| 扎囊县| 贵德县| 花垣县| 西安市| 辰溪县| 浦江县| 东山县| 泰安市| 桂林市| 咸宁市| 卢龙县| 新竹县| 永清县| 东乡县| 平乡县| 新河县| 枣庄市| 七台河市| 称多县| 海口市| 宣威市| 新蔡县| 通渭县| 甘德县| 金沙县| 正阳县| 靖安县| 黑河市| 潼南县| 高密市| 连山| 上饶县| 西安市| 迭部县| 江孜县| 历史| 凤冈县| 突泉县|