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

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

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


    posts - 15,  comments - 34,  trackbacks - 27
    手工書寫spring-beans.xml非常繁瑣,而且如果多個(gè)程序員同時(shí)進(jìn)行一個(gè)項(xiàng)目的時(shí)候,即使分成多個(gè)spring文件,也很容易會(huì)產(chǎn)生沖突,更別說經(jīng)常遇到的錯(cuò)誤和程序升級(jí)問題了,還好最新的Xdoclet可以幫助我們解決這個(gè)煩惱,在最新的Xdoclet中已經(jīng)包含了對(duì)srping的支持,即srpingdoclet。如下是例子:

    1、下載ant,從jakarta.apache.org
    安裝在c:\dev\ant,安裝過程就不詳細(xì)說了,如果ant都不懂,那看來您有些落伍了,也先別往下看了,學(xué)習(xí)一下ant先

    2、下載xdoclet,當(dāng)然是xdoclet.sf.net了,下載后把lib的東西放置到
    c:\dev\ant\lib\xdoclet

    3、java 代碼
    只是個(gè)例子而已
    ===================================================================
    XdocletMain.java :
    ===================================================================
    代碼:

    /**
     * Created by IntelliJ IDEA.
     * User: wangzy
     * Date: 2004-12-5
     * @spring.bean
     *  id="XdocletMain"
     *  singleton="true"
     * 上述說明,這是個(gè)spring的bean,id為XdocletMain,如果看不懂,再補(bǔ)習(xí)一下xdoclet
     * @spring.property
     *      name="bean1"
     *      ref="Bean1"
     * 上述說明,有個(gè)bean1屬性,關(guān)聯(lián)的為Bean1的spring組件
     * @spring.property
     *     name="bean2"
     *     ref="Bean2"
     * 同上
     */
    public class XdocletMain {

        public Bean1 getBean1() {
            return bean1;
        }

        public void setBean1(Bean1 bean1) {
            this.bean1 = bean1;
        }

        public Bean2 getBean2() {
            return bean2;
        }

        public void setBean2(Bean2 bean2) {
            this.bean2 = bean2;
        }

        private Bean1 bean1 = null;

        private Bean2 bean2 = null;
       
    }

    ===================================================================

    Bean1.java :
    ===================================================================
    代碼:

    /**
     * Created by IntelliJ IDEA.
     * User: wangzy
     * Date: 2004-12-5
     * @spring.bean
     *      id="Bean1"
     *      singleton="true"
     * 聲明一個(gè)Bean1的spring組件
     */
    public class Bean1 {
       
    }

    ===================================================================
    Bean2.java :

    ===================================================================
    代碼:

    /**
     * Created by IntelliJ IDEA.
     * User: wangzy
     * Date: 2004-12-5
     * @spring.bean
     *      id="Bean2"
     *      singleton="true"
     * 類似Bean1
     */
    public class Bean2 {
    }

    ===================================================================

    下來當(dāng)然就是最重要的ant的build.xml了,其中相關(guān)部分為:
    代碼:

    <!--這里是xdoclet的lib,這些都不是ant的core包,所以要引進(jìn)來 -->
    <path id="xdoclet.class.path">
        <fileset dir="c:\dev\ant\lib\xdoclet">
            <include name="*.jar"/>
        </fileset>
    </path>

    <!--這里就是生成spring-beans配置了 -->
    <target name="srpingdoclet">
        <!--定義springdoclet task -->   
        <taskdef
            name="springdoclet"
            classname="xdoclet.modules.spring.SpringDocletTask"
            classpathref="xdoclet.class.path"
        />
        <!--這里根據(jù)src下的java文件中的信息,生成spring-beans.xml到“spring/spring-beans.xml”文件中-->
        <springdoclet destdir="spring">
            <fileset dir="src" includes="**/*.java" />
            <springxml destinationFile="spring-beans.xml" />
        </springdoclet>
    </target>



    運(yùn)行ant springdoclet,看看spring/spring-beans.xml文件,大功告成?。?!
    具體詳細(xì)信息可以看xdoclet文檔

    代碼:


    <?xml version="1.0" encoding="UTF-8"?>

    <!DOCTYPE beans PUBLIC
        "-//SPRING//DTD BEAN//EN"
        "http://www.springframework.org/dtd/spring-beans.dtd">

    <beans
      default-autowire="no"
      default-lazy-init="false"
      default-dependency-check="none"
    >

      <bean
          id="Bean1"
          class="Bean1"
          singleton="true"
      >

      </bean>

      <bean
          id="XdocletMain"
          class="XdocletMain"
          singleton="true"
      >

        <property name="bean1">
          <ref bean="Bean1"/>
        </property>
        <property name="bean2">
          <ref bean="Bean2"/>
        </property>
      </bean>

      <bean
          id="Bean2"
          class="Bean2"
          singleton="true"
      >

      </bean>

      <!--
         To include additional bean definitions for Spring in the generated
         application context file, add a file to your XDoclet merge directory
         called spring-beans.xml that contains the <bean></bean> markup.
      -->

    </beans>

    posted on 2005-02-04 11:14 jacky 閱讀(2271) 評(píng)論(3)  編輯  收藏 所屬分類: Open source

    FeedBack:
    # re: spring xdoclet使用
    2005-03-01 09:20 | 楊雄輝
    我發(fā)現(xiàn)Spring Xdoclet 無法出來 bean的parent屬性。
      回復(fù)  更多評(píng)論
      
    # re: spring xdoclet使用
    2005-05-16 16:57 | hello
    能否用xdoclet實(shí)現(xiàn)transaction或是datasource等配置  回復(fù)  更多評(píng)論
      
    # re: spring xdoclet使用
    2005-07-10 13:36 | @_@
    否用xdoclet實(shí)現(xiàn)transaction或是datasource等配置

    這個(gè)用meger
    在ant中有設(shè)置
    megerdir的
    在這個(gè)dir下放spring-beans.xml
    自動(dòng)會(huì)合并到了你要的配置文件中間去
      回復(fù)  更多評(píng)論
      
    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(10)

    隨筆檔案

    文章分類

    文章檔案

    相冊(cè)

    收藏夾

    java

    搜索

    •  

    最新評(píng)論


    主站蜘蛛池模板: 国产福利视精品永久免费| 国产美女做a免费视频软件| 亚洲免费在线视频观看| 天天摸天天操免费播放小视频| 国产精品久久久久久亚洲小说| 国产亚洲一区二区在线观看| 黄色永久免费网站| 老司机午夜免费视频| 婷婷精品国产亚洲AV麻豆不片| 日韩视频在线免费观看| 国产色爽免费无码视频| 亚洲av永久无码精品天堂久久| 婷婷亚洲天堂影院| 成人在线免费看片| 新最免费影视大全在线播放| 精品亚洲aⅴ在线观看| 成人亚洲综合天堂| 2019中文字幕在线电影免费| 成人a毛片免费视频观看| 激情内射亚洲一区二区三区| 午夜亚洲av永久无码精品| 最近的中文字幕大全免费8| 国产偷国产偷亚洲高清在线| 18亚洲男同志videos网站| 免费在线不卡视频| 成人免费福利视频| 亚欧洲精品在线视频免费观看 | 深夜久久AAAAA级毛片免费看| 国产AV无码专区亚洲Av| 日本免费高清一本视频| 3d动漫精品啪啪一区二区免费| 免费一区二区三区在线视频| 亚洲天堂2016| 亚洲嫩草影院久久精品| 亚洲人成电影网站国产精品| 好吊妞788免费视频播放| 最近2019年免费中文字幕高清| 本免费AV无码专区一区| 美女黄色免费网站| 亚洲精品天堂在线观看| 777亚洲精品乱码久久久久久|