日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

淺談Spring Bean的基本配置

瀏覽:164日期:2022-08-13 09:37:57
一、Spring中set方法的注入

User實(shí)體

@Data//lombok提供的有參構(gòu)造@AllArgsConstructorlombok提供的無(wú)參構(gòu)造@NoArgsConstructorpublic class User { private int id; private String name; private int age; private String sex; private String birthday;}

beanFactory.xml

<bean class='edu.xalead.User'><property name='id' value='1806'/><property name='name'> <value>張三</value></property><property name='sex' value='男'/><property name='age' value='18'/><property name='birthday' value='2000-1-1'/> </bean>1.1 set的兩種注入方法

我們?cè)趚ml文件中注入的時(shí)候我們可以寫成這樣:

<property name='id' value='1806'/>

也可以寫成這樣:

<property name='id'> <value>1806</value></property>

這沒(méi)什么區(qū)別的,不過(guò)我們一般使用前者,畢竟看起來(lái)代碼少,也方便

代碼測(cè)試:

@Test public void test3(){//創(chuàng)建工廠BeanFactory beanFactory = new ClassPathXmlApplicationContext('beanFactory.xml');//從工廠中拿配置好的UserServlet實(shí)例User user = beanFactory.getBean(User.class);System.out.println(user); }

淺談Spring Bean的基本配置

1.2 type屬性

有事我們?cè)谧⑷氲臅r(shí)候有時(shí)候會(huì)看到type:

<property name='id'> <value type='int'>1806</value></property>

這相當(dāng)于一個(gè)類型聲明,聲明value是什么類型的數(shù)據(jù),然后調(diào)用類型轉(zhuǎn)換器將我們寫入的字符串轉(zhuǎn)換為我們我們所定義的類型。但其實(shí)這是一個(gè)多余的,當(dāng)我們注入的時(shí)候,會(huì)通過(guò)User對(duì)象進(jìn)行反射從而知道是什么類型。

1.3 Date()類型的注入

但有一些特殊的類型是Spring所沒(méi)有的,需要我們自己去定義,就比如Date類型,如果我們這樣寫就會(huì)報(bào)錯(cuò)

private Date birthday;

<property name='birthday' value='2000-1-1'/>

淺談Spring Bean的基本配置

Spring是沒(méi)有這個(gè)的轉(zhuǎn)換器,將字符串轉(zhuǎn)換為Date類型,所以其實(shí)我們可以直接用String來(lái)寫,或者new Date(),但是后者約束性太大,不能得到我們想要的日期,還是前者方便。

二、Spring_scop

當(dāng)我們?cè)跍y(cè)試案例中創(chuàng)建兩個(gè)User實(shí)例時(shí),進(jìn)行檢查發(fā)現(xiàn),這兩個(gè)實(shí)例其實(shí)是一個(gè)

BeanFactory beanFactory = new ClassPathXmlApplicationContext('beanFactory.xml');//從工廠中拿配置好的UserServlet實(shí)例User user = beanFactory.getBean(User.class);User user1 = beanFactory.getBean(User.class);System.out.println(user == user1);

淺談Spring Bean的基本配置

如果我們要?jiǎng)?chuàng)建多例模式,就要使用到屬性scope

scope屬性有兩個(gè)值:

1.singleton(默認(rèn)情況下,即單例模式)

2.prototype(多例模式)

<bean scope='prototype'>

我們?cè)谶M(jìn)行測(cè)試答案為false

三、自動(dòng)注入(autowire)

我們?cè)趗serServlet中注入userDao

<bean class='edu.xalead.UserDao'></bean><bean class='edu.xalead.UserServlet'> <property name='userDao' ref='userDao'/></bean>

但其實(shí)我們沒(méi)必要這樣寫,Bean中you自動(dòng)注入的屬性autowire,他有兩個(gè)值:

1.byName,根據(jù)名字注入,即id=“userDao”

<bean class='edu.xalead.UserDao'></bean><bean autowire='byName'/>

2.byType,根據(jù)類型注入,類型注入比較有局限性,同種類型只能注入一個(gè),多了會(huì)報(bào)不是唯一錯(cuò)誤

<bean class='edu.xalead.UserDao'></bean><bean autowire='byType'>四、構(gòu)造注入

<!-- User有個(gè)四參構(gòu)造,我們通過(guò)constructor-arg一個(gè)一個(gè)對(duì)應(yīng)構(gòu)造參數(shù)進(jìn)行值的注入 --><bean class='edu.xalead.User'> <constructor-arg value='1111'/> <constructor-arg value='zhangsan'/> <constructor-arg value='20'/> <constructor-arg value='M'/></bean>

構(gòu)造注入和set注入的不同點(diǎn)就是,加入元素的順序必須和你所創(chuàng)建的實(shí)體(User)類相同,若不同,則會(huì)報(bào)錯(cuò),由于反射過(guò)來(lái)的類型和轉(zhuǎn)換器轉(zhuǎn)換的類型不同,這時(shí)候我們需要加入另一個(gè)屬性index

<!-- User有個(gè)四參構(gòu)造,我們通過(guò)constructor-arg一個(gè)一個(gè)對(duì)應(yīng)構(gòu)造參數(shù)進(jìn)行值的注入 --><bean class='edu.xalead.User'> <constructor-arg value='M' index='3'/> <constructor-arg value='zhangsan' index='1'/> <constructor-arg value='1111'/ index='0'> <constructor-arg value='20' index='2'/></bean>

那什么時(shí)候使用構(gòu)造注入呢?當(dāng)我們自己定義一個(gè)構(gòu)造函數(shù)的時(shí)候使用構(gòu)造注入

public class User { private int id; private String name; private int age; private String sex; private String birthday;//自定義構(gòu)造函數(shù) public User(int id , String name){this.id = id;this.name = name; }}

<bean class='edu.xalead.User'><constructor-arg value='18'/><constructor-arg value='張三'/> </bean>

這個(gè)時(shí)候就不能使用set注入,他會(huì)報(bào)錯(cuò),即使你寫出全參構(gòu)造函數(shù)也不行

淺談Spring Bean的基本配置

五、Array注入(數(shù)組注入)

private String[] photos;

<property name='photos'><array> <value>1.jpg</value> <value>2.jpg</value> <value>3.jpg</value></array></property>六、List注入

private List<String> list;

<property name='list'><list> <value>a</value> <value>b</value> <value>c</value></list></property>七、Set注入

private Set<String> set;

<property name='set'><set> <value>a</value> <value>b</value> <value>c</value></set></property>八、Map注入

private Map<Integer,String> map

<property name='map'><map>//第一種寫法 <entry key='1' value='a'/> //第二種寫法 <entry key='2'> <value>b</value> </entry> <entry key='3' value='c'/> </map></property>九、Property注入

private Properties prop;

<property name='prop'> <props><prop key='4432'>42341231</prop><prop key='54353'>5464564</prop><prop key='9865'>2659846</prop> </props></property>

到此這篇關(guān)于淺談Spring Bean的基本配置的文章就介紹到這了,更多相關(guān)Spring Bean的配置內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Spring
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
日韩福利视频导航| 亚洲最新无码中文字幕久久| 四虎精品一区二区免费| 91嫩草精品| 激情综合五月| 欧美一区二区三区激情视频| 模特精品在线| 国产精品免费不| 日韩一区二区三区免费播放| 欧美在线资源| 国产欧美日韩精品一区二区免费| 国产在线观看www| 免费视频久久| 老牛国内精品亚洲成av人片| 日韩视频网站在线观看| 欧美一区二区三区高清视频| 午夜久久av| 国产成人精选| 国产一级久久| 欧美国产亚洲精品| 亚洲激情中文| 国产毛片精品| 宅男在线一区| 国产精品www.| 在线亚洲欧美| 久久精品免视看国产成人| 黄色av日韩| 麻豆精品视频在线| 国产美女精品| 福利精品在线| 久久亚洲欧洲| 久久亚洲人体| 一区二区91| 久久精品123| 国产精品香蕉| 亚洲激情欧美| 国产 日韩 欧美 综合 一区| 亚洲免费影视| 91日韩欧美| 日本在线成人| 婷婷亚洲五月色综合| 久久久91麻豆精品国产一区| 日韩影院免费视频| 日韩欧美国产精品综合嫩v| 日韩av网站在线免费观看| 偷拍精品精品一区二区三区| 日韩黄色免费网站| 影院欧美亚洲| 久久精品青草| 精品久久亚洲| 久久精品72免费观看| 蜜臀av免费一区二区三区| 高清精品久久| 国产精品啊v在线| 日韩欧美2区| 视频一区在线播放| 99久久夜色精品国产亚洲1000部| 国产精品videossex久久发布| 国产欧美一区二区三区米奇| 视频一区在线播放| 99久久99视频只有精品| 国产成人黄色| 国产精品2区| 欧美一区自拍| 久久精品一区二区不卡| 精品伊人久久久| 国产一精品一av一免费爽爽| 丝袜美腿亚洲一区二区图片| 久久久久免费av| 中文在线中文资源| 国产一区二区视频在线看| 国产精品伊人| 日韩av网站在线免费观看| 在线日韩成人| 久久国产高清| 激情综合网址| 日韩天堂在线| 亚洲精品**中文毛片| 欧美激情综合| 国产日本亚洲| 欧美日韩精品一区二区三区在线观看| 亚洲精品美女| 日韩午夜视频在线| 青青草视频一区| 青青国产精品| 久久国产精品色av免费看| 日本国产欧美| 日本中文字幕视频一区| 亚洲影院天堂中文av色| 亚洲欧美久久| 伊人精品一区| 成人精品天堂一区二区三区| 国产精品一区二区三区av麻| 欧美日韩网址| 国产精品高潮呻吟久久久久| 欧美日韩 国产精品| 91麻豆精品| 国产欧美在线| 国产一区二区亚洲| 亚洲日本网址| 婷婷六月综合| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产精品视区| 日韩国产高清在线| 国产欧美高清视频在线| 欧美日韩亚洲一区二区三区在线| 国产亚洲一区二区三区不卡| 国产精品**亚洲精品| 国产一区国产二区国产三区| 亚洲天堂av影院| 亚洲高清成人| 另类激情亚洲| 人人爱人人干婷婷丁香亚洲| 国产精品探花在线观看| 精品亚洲a∨| 欧美日韩免费看片| 婷婷综合激情| 亚洲精品影视| 国产精品sm| 成人在线网站| 久久高清国产| 亚洲久久一区| 国产精品一级| 肉色欧美久久久久久久免费看 | 久久国产欧美日韩精品| 久久99精品久久久野外观看| 色偷偷色偷偷色偷偷在线视频| 99热精品久久| 亚洲精品麻豆| 狠狠久久伊人| 伊人影院久久| 久久精品 人人爱| 久久精品国产99国产| 日韩毛片在线| 亚洲精品伦理| 97欧美在线视频| 日韩视频一区| 国产日韩一区二区三区在线| 在线人成日本视频| 蜜桃视频第一区免费观看| 国产欧美在线| 久久精品免费一区二区三区 | 欧美a级一区二区| 国产成人免费| 午夜在线播放视频欧美| 国产视频一区二区在线播放| 蜜桃av.网站在线观看| 美女国产一区| 精品日韩在线| 丝袜脚交一区二区| 麻豆91精品91久久久的内涵| 91国语精品自产拍| 国产精品亚洲四区在线观看| 亚洲福利久久| 国产精品亚洲产品| 亚洲成人免费| 国产精品1区在线| 国产亚洲精品久久久久婷婷瑜伽| 清纯唯美亚洲综合一区| 99精品网站| 欧美a在线观看| 久久高清一区| 日韩欧美不卡| 国产精品密蕾丝视频下载| 午夜精品一区二区三区国产| 欧美a在线观看| 亚洲一级大片| 久久久噜噜噜| 国产经典一区| 亚洲三级精品| 欧美日韩第一| 国内一区二区三区| 亚洲精品一级| av在线日韩| 国产视频一区二区在线播放| 99国产成+人+综合+亚洲欧美| 欧美国产极品| 蜜桃av一区二区在线观看| 日韩国产欧美一区二区| 欧美综合精品| 久久亚洲电影| 国精品一区二区三区| 欧美国产先锋| 婷婷精品在线| 亚洲黄色在线| 久久精品二区三区| 国产一区国产二区国产三区| 日本不卡一区二区三区| 91精品国产成人观看| 国产精品videossex| 亚洲精品自拍| 伊人精品在线| 久久影院一区| 欧美少妇精品| 精品一区二区男人吃奶| 国产精品亚洲综合在线观看| 亚洲精品欧美| 免费一级片91| 一区免费在线| 国产一区亚洲|