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

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

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

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

          /**
           * Created by IntelliJ IDEA.
           * User: wangzy
           * Date: 2004-12-5
           * @spring.bean
           *  id="XdocletMain"
           *  singleton="true"
           * 上述說明,這是個spring的bean,id為XdocletMain,如果看不懂,再補習一下xdoclet
           * @spring.property
           *      name="bean1"
           *      ref="Bean1"
           * 上述說明,有個bean1屬性,關聯的為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"
           * 聲明一個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 {
          }

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

          下來當然就是最重要的ant的build.xml了,其中相關部分為:
          代碼:

          <!--這里是xdoclet的lib,這些都不是ant的core包,所以要引進來 -->
          <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"
              />
              <!--這里根據src下的java文件中的信息,生成spring-beans.xml到“spring/spring-beans.xml”文件中-->
              <springdoclet destdir="spring">
                  <fileset dir="src" includes="**/*.java" />
                  <springxml destinationFile="spring-beans.xml" />
              </springdoclet>
          </target>



          運行ant springdoclet,看看spring/spring-beans.xml文件,大功告成!!!
          具體詳細信息可以看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) 評論(3)  編輯  收藏 所屬分類: Open source

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

          這個用meger
          在ant中有設置
          megerdir的
          在這個dir下放spring-beans.xml
          自動會合并到了你要的配置文件中間去
            回復  更多評論
            
          <2025年5月>
          27282930123
          45678910
          11121314151617
          18192021222324
          25262728293031
          1234567

          常用鏈接

          留言簿(10)

          隨筆檔案

          文章分類

          文章檔案

          相冊

          收藏夾

          java

          搜索

          •  

          最新評論


          主站蜘蛛池模板: 大竹县| 五指山市| 白朗县| 米易县| 青河县| 浙江省| 宝丰县| 广德县| 辉南县| 工布江达县| 鸡西市| 兰州市| 南澳县| 常德市| 湖州市| 卢龙县| 涪陵区| 灵武市| 诸城市| 深水埗区| 大渡口区| 新宾| 宁德市| 南郑县| 游戏| 葫芦岛市| 新兴县| 天峨县| 米脂县| 乌拉特后旗| 柞水县| 娱乐| 康乐县| 固安县| 镇原县| 宣汉县| 汉源县| 上高县| 文化| 璧山县| 绥芬河市|