日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內最全IT社區平臺 聯系我們 | 收藏本站
阿里云優惠2
您當前位置:首頁 > php框架 > 框架設計 > Webx框架:AutoConfig

Webx框架:AutoConfig

來源:程序員人生   發布時間:2015-01-14 08:29:21 閱讀次數:8648次

AutoConfig

AutoConfig是1個小工具,用于解決不同機器之間配置不同的問題。有時候有些配置,比如數據庫地址、緩存地址等,這些配置與環境有關。每次在不同的環境中都需要重新修改配置,比較麻煩。解決這個問題有兩種方法,1種是通過maven中的filter工具,另外1種是使用autoconfig。maven-filter工具的缺點是,當項目編譯打包以后,沒法再修改配置文件。而autoconfig可以通過1個腳本指令,直接修改打包過的配置文件,不需要重新編譯,這樣節省了很多時間。

接下來介紹用法,包括開發階段和部署階段。開發階段首先在META-INF文件夾中增加autoconf/auto-config.xml文件。下面是該文件的示例內容:

<?xml version="1.0" encoding="UTF⑻"?>
<config>
  <group>
    <property name="petstore.work" description= "利用程序的工作目錄" />
    <property name="petstore.loggingRoot" defaultValue="${petstore.work}/logs" description= "日志文件目錄" />
    <property name="petstore.upload" defaultValue="${petstore.work}/upload" description="上傳文件的目錄" />
    <property name="petstore.loggingLevel" defaultValue="warn" description="日志文件級別" >
      <validator name="choice" choice="trace, debug, info, warn, error" />
    </property>
  </group>
  <script>
    <generate template="WEB-INF/web.xml" />
    <generate template="WEB-INF/common/resources.xml" />
  </script>
</config>

下面是每一個標簽的解釋:

property標簽。有name/defaultValue/description/required屬性。顧名思義,這里就不贅述了。

validator標簽。用于驗證參數是不是填寫正確。支持的驗證器有以下幾種。

<validator name="boolean" />
<validator name="choice" choice="trace, debug, info, warn, error" />
<validator name="email" />
<validator name="fileExist" [file="WEB-INF/web.xml"/> 文件必須存在
<validator name="hostExist" /> 合法IP
<validator name="keyword" /> 只能由字母數字下劃線組成
<validator name="number" />
<validator name="regexp" regexp="..."/>

generate標簽。表示替換該文件中的placeholder。有template/destfile/charset/outputCharset參數。

在maven中加入autoconfig

<build>
    <plugins>
        <plugin>
            <groupId>com.alibaba.citrus.tool</groupId>
            <artifactId>autoconfig-maven-plugin</artifactId>
            <version>1.2</version>
            <configuration>
                <!-- 要進行 AutoConfig 的目標文件,默許為${project.artifact.file}。
                <dest>${project.artifact.file}</dest>
                -->
                <!-- 配置后,是不是展開目標文件,默許為false,不展開。
                <exploding>true</exploding>
                -->
                <!-- 展開到指定目錄,默許為 ${project.build.directory}/ ${project.build.finalName}。
                <explodedDirectory>
                ${project.build.directory}/${project.build.finalName}
                </explodedDirectory>
                -->
            </configuration>
            <executions>
                <execution>
                    <phase>package</phase>
                    <goals>
                        <goal>autoconfig</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

部署階段。首先從網上下載autoconfig工具:

  • antx-autoconfig⑴.2.tgz
  • antx-autoexpand⑴.2.tgz

安裝到系統目錄,比如/usr/local/bin中。

配置利用包。下面的命令將會修改test.war中的配置文件,將placeholder直代替換成屬性值。

autoconfig test.war

autoconfig test.war test-configured.war

如果希望有的placeholder不被替換,可使用${D{myprop}}

同享參數。有些利用使用的相同的參數,就能夠通過這個選項,1次配置,多方使用。

autoconfig -s share1.properties,share2.properties test.war

同享參數還可以援用網絡上的配置文件,可以有多套默許配置。

其他命令。

autoconfig -i on # 交互模式 
autoconfig -i off
autoconfig -u file.xml # 配置file.xml文件 
autoconfig -c GBK # 設置編碼 

AutoExpand

用于嵌套展開1個利用包。

生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: 国产原创视频 | 激情五月婷婷综合 | 日韩看片 | 亚洲三区在线观看 | 在线观看中文字幕av | 一级免费视频 | xxx69在线观看 | 久久久精品一区二区三区 | 国产日韩精品一区二区 | 九九精品久久久 | 欧美日韩免费观看视频 | 99视频在线免费观看 | 欧美性大战xxxxx久久久 | 成人毛片在线精品国产 | 亚洲欧美婷婷 | 涩涩网页| 久一区二区 | 国产综合久久 | 国产专区在线 | 视频在线观看国产 | 美女福利视频导航 | 国产精品网址 | 久久99久久精品 | 精品国产乱码久久久久久88av | 亚洲成人高清av | 欧美日韩在线影院 | 免费观看一区二区三区毛片 | 在线观看日韩精品 | 久久久久亚洲一区二区三区 | 欧美xxxx视频 | 中文字幕第九页 | 日韩亚洲欧美视频 | 成人视屏在线观看 | 成人免费网站在线观看 | 久久精品av | 欧美国产在线观看 | 女人18毛片九区毛片在线 | 日韩精品一二三区 | 亚洲天堂免费视频 | 99久久综合狠狠综合久久 | 欧美精品一区二区三区在线播放 |