<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 66,  comments - 11,  trackbacks - 0
    分散配置:
    有時(shí)你會(huì)發(fā)現(xiàn)將配置文件分成幾個(gè)分散的配置文件是很有益的。
    將Data Source配置到Bean裝配文件中不是很適合。數(shù)據(jù)庫(kù)細(xì)節(jié)是一個(gè)發(fā)布信息。而Bean裝配文件的目的是定義如何裝配系統(tǒng)的各個(gè)模塊。如果使用ApplicationContext當(dāng)作Spring容器,那么,在Spring中分離屬性配置是很簡(jiǎn)單的。使用Spring的PropertyPlaceholderConfigurer告訴Spring從外部屬性文件裝載一些配置信息。
    <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            
    <property name="url">
                
    <value>jdbc:hsqldb:Training</value>
            
    </property>
            
    <property name="driverClassName">
                
    <value>org.hsqldb.jdbcDriver</value>
            
    </property>
            
    <property name="username">
                
    <value>appUser</value>
            
    </property>
            
    <property name="password">
                
    <value>password</value>
            
    </property>
        
    </bean>
    location屬性告訴Spring從哪里找到屬性文件。location屬性允許你使用單個(gè)配置文件。如果你想將配置信息分散到多個(gè)配置文件中,請(qǐng)使 用PropertyPlaceholderConfigurer的locations屬性設(shè)置文件列表,使用這種方式,可以使用占位符變量代替Bean裝 配文件中的硬編碼配置了。

    <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer">
            
    <property name="location">
                
    <value>jdbc.properties</value>
            
    </property>
            
    <property name="locations">
                
    <list>
                    
    <value>jdbc.properties</value>
                    
    <value>security.properties</value>
                    
    <value>application.properties</value>
                
    </list>
            
    </property>
        
    </bean>
        
    <bean id="dataSources" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
            
    <property name="url">
                
    <value>${database.url}</value>
            
    </property>
            
    <property name="driverClassName">
                
    <value>${database.driver}</value>
            
    </property>
            
    <property name="username">
                
    <value>${database.user}</value>
            
    </property>
            
    <property name="password">
                
    <value>${database.password}</value>
            
    </property>
        
    </bean>

    定制屬性編輯器:
    java.beans.PropertyEditor接口提供了將字符串值映射成非String類型的方法。有一個(gè)好用的這個(gè)接口的實(shí)現(xiàn)-

    java.beans.PropertyEditorSupport,它有2個(gè)方法我們會(huì)感興趣:
    1、getAsText():方法返回一個(gè)表示屬性值的字符串。
    2、setAsText(String value):將傳遞進(jìn)來(lái)的字符串賦給Bean的屬性。

    Spring帶了幾種建立在propertyEditorSupport之上的定制編輯器,包括

    org.springframework.beans.propertyeditors.URLEditor,它是一個(gè)用于將字符串與java.net.URL相互轉(zhuǎn)換的定制編輯器。
    Spring提供的其他定制編輯器包括:
    1、ClassEditor-使用包含全稱類名的字符串設(shè)置java.lang.Class屬性。
    2、CustormDateEditor-使用某種java.text.DateFormat對(duì)象將一個(gè)字符串設(shè)置給java.util.Date屬性。
    3、FileEditor-使用包含文件路徑的字符串設(shè)置java.io.File屬性。
    4、LocalEditor-使用包含地域信息的字符串設(shè)置java.util.Local屬性。
    5、StringArrayPropertyEditor-將一個(gè)包含逗號(hào)的String轉(zhuǎn)換成String數(shù)組屬性。
    6、StringTrimmerEditor-自動(dòng)修正字符串屬性,可以選擇將空字符串轉(zhuǎn)變?yōu)閚ull.
    <bean id="costomEditorConfigurer" class="org.springframework.beans.factory.config.CustomEditorConfigurer">
            
    <property name="customEditors">
                
    <map>
                    
    <entry key="com.wyq.spring.PhoneNumber">
                        
    <bean id="phoneEditor" class="com.wyq.spring.PhoneEditor"></bean>
                    
    </entry>
                
    </map>
            
    </property>
        
    </bean>
    其中的map中的key表示要添加自定義屬性的類,value表示自定義屬性實(shí)現(xiàn)的類。

    package com.wyq.spring;

    import java.beans.PropertyEditorSupport;

    public class PhoneEditor extends PropertyEditorSupport {
        
        
    public void setAsText(String textValue) throws IllegalArgumentException {
            String stripped 
    = stripNonNumberic(textValue);
            
            String areaCode 
    = stripped.substring(0,3);
            String prefix 
    = stripped.substring(3,6);
            String number 
    = stripped.substring(6);
            PhoneNumber phone 
    = new PhoneNumber(areaCode,prefix,number);
            setValue(phone);
        }
        
    private String stripNonNumberic(String original){
            StringBuffer allNumberic 
    = new StringBuffer();
            
    for(int i=0;i<original.length();i++){
                
    char c = original.charAt(i);
                
    if(Character.isDigit(c)){
                    allNumberic.append(c);
                }
            }
            
    return allNumberic.toString();
        }
    }


    posted on 2009-10-31 17:54 王永慶 閱讀(318) 評(píng)論(0)  編輯  收藏 所屬分類: SPRING
    <2009年10月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(1)

    隨筆分類

    隨筆檔案

    關(guān)注blogs

    搜索

    •  

    最新評(píng)論

    • 1.?re: 心中的那個(gè)她[未登錄]
    • 如果心情能那么容易放開就好了,碰到她是我的緣分,但是她的緣分不知道在哪里。
    • --王永慶
    • 2.?re: 心中的那個(gè)她[未登錄]
    • 兄弟,喜歡就大膽去追好了,就是因?yàn)橄矚g才會(huì)有不愉快,如果想一輩子沒有這些煩惱,找一個(gè)可有可無(wú)的人就好了。這種事講的是緣分吧。別人對(duì)你好不好其實(shí)不太重要。放開心情就好了。
    • --萍水相逢
    • 3.?re: 心中的那個(gè)她
    • 只能同甘不能共苦,就他媽算了吧,程序員也是人??!我現(xiàn)在也很討厭女的不理解人情。
    • --咖啡妝
    • 4.?re: 難以割舍的那份情感
    • 評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
    • --王永慶
    • 5.?re: 難以割舍的那份情感
    • 評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
    • --隔葉黃鶯

    閱讀排行榜

    評(píng)論排行榜

    主站蜘蛛池模板: 伊人久久五月丁香综合中文亚洲| 色婷婷六月亚洲婷婷丁香| 国产大陆亚洲精品国产| 亚洲人成网站观看在线播放| 亚洲а∨精品天堂在线| 国产亚洲老熟女视频| 99re免费99re在线视频手机版| 亚洲香蕉在线观看| 国产gv天堂亚洲国产gv刚刚碰 | 一本色道久久综合亚洲精品| 高清在线亚洲精品国产二区| 无码av免费网站| 黄人成a动漫片免费网站| 亚洲天堂中文字幕| 又大又粗又爽a级毛片免费看| 99久久国产精品免费一区二区| 亚洲一区在线观看视频| 亚洲午夜精品第一区二区8050| 亚洲毛片不卡av在线播放一区| 亚洲一区日韩高清中文字幕亚洲 | 亚洲电影免费在线观看| 亚洲免费在线视频播放| 在线亚洲v日韩v| 又大又硬又粗又黄的视频免费看 | 日本不卡免费新一二三区| 久久aⅴ免费观看| 99re6热视频精品免费观看| 日本亚洲免费无线码| 中文字幕免费在线看电影大全| 在线亚洲高清揄拍自拍一品区| 国产亚洲AV无码AV男人的天堂| 无人影院手机版在线观看免费| 国产一精品一AV一免费| 一级毛片免费全部播放| 亚洲熟妇无码av另类vr影视| 亚洲熟妇无码AV| 男女一边桶一边摸一边脱视频免费| 亚洲人成网站免费播放| 久久亚洲sm情趣捆绑调教| 国产亚洲一区二区手机在线观看| 久久亚洲sm情趣捆绑调教|