??xml version="1.0" encoding="utf-8" standalone="yes"?>91久久久久久,国产精品一区二区三区成人,久久精品日产第一区二区三区精品版 http://www.aygfsteel.com/masen/category/23510.htmlzh-cnThu, 20 Dec 2007 23:21:16 GMTThu, 20 Dec 2007 23:21:16 GMT60javadoc 生成目文档http://www.aygfsteel.com/masen/articles/169137.htmlMasenMasenThu, 20 Dec 2007 11:51:00 GMThttp://www.aygfsteel.com/masen/articles/169137.htmlhttp://www.aygfsteel.com/masen/comments/169137.htmlhttp://www.aygfsteel.com/masen/articles/169137.html#Feedback0http://www.aygfsteel.com/masen/comments/commentRss/169137.htmlhttp://www.aygfsteel.com/masen/services/trackbacks/169137.htmlJ2SE5中的javadoc.exe的命令行可选参数多达五十余个,其复杂性可惌知Q是不是看着头都大了呢?但通常情况下,我们不想那么ȝQ?br />
假设源代码在 C:\src 目录下,其中 com.liigo 是主包,其下可能有数十个子包Q数百(千)个Java文g。目录结构大U是q样的:

- C:\
    | src\
      | com\
        | liigo\

           | ***

怎么才能以最L方式生成所有的API文档呢?

c:\>
c:\>cd src
c:\src>javadoc -d doc -subpackages com.liigo

q样搞定了Q最l生成的API文档位于 c:\src\doc 目录Q该目录是由javadoc.exe自动生成的)?br />
上面的用法利用了“当前目录”?#8220;相对路径”Q当然也可以用绝对\径:

...>javadoc -d c:\doc -sourcepath c:\src -subpackages com.liigo

最l生成的API文档位于 c:\doc 目录Q该目录同样是由javadoc.exe自动生成的)?br />

ȝ一下:

我们只用Cjavadoc的三个参敎ͼ -dQ?subpackagesQ?sourcepathQ其中:

参数 说明
-d 指定API文档的输出目录,默认是当前目录。徏议L指定该参数?
-sourcepath 指定源代码\径,默认是当前目录?此参数通常是必ȝ?
-subpackages 以递归的方式处理各子包。关键参敎ͼ如果不用本参数Q每ơ只能处理一个子包(或需手工列出所有子包)?


注:以上CZ要求 javadoc.exe 所在\径位于系l环境变?#8220;PATH”中?br />

补充一点:

使用参数 -author 可以作者信息(@author ***Q导出到最l生成的API文档中, -version 可以生成版本信息。如果是自己写的一个包Q千万不要忘了用 -author ?)

最l完整的命o行是Q?br />
...>javadoc -d c:\doc -sourcepath c:\src -subpackages com.liigo -author -version

javadoc的命令行语法如下Q?br />
javadoc [ options ] [ packagenames ] [ sourcefiles ] [ @files ]

参数可以按照L序排列。下面分别就q些参数和相关的一些内容进行说明:


  • Packagenames 包列表。这个选项可以是一pd的包名(用空格隔开Q,例如java.lang java.lang.reflect
    java.awt。不q,因ؓjavadoc不递归作用于子包,不允许对包名使用通配W;所以你必须昄地列出希望徏立文档的每一个包?br />
  • Sourcefiles 源文件列表。这个选项可以是一pd的源文g名(用空格隔开Q,可以使用通配W。javadoc允许四种源文ӞcL代码文g、包描述文g、M概述文g、其他杂文g?br />
    ?cL代码文gQ类或者接口的源代码文件?br />
    ?包描q文Ӟ每一个包都可以有自己的包描述文g。包描述文g的名U必L"package.html"Q与包的.java文g攄在一赗包描述文g的内定w常是用HTML标记写的文档。javadoc执行时将自动L包描q文件。如果找刎ͼjavadoc首先对描述文g?lt;body></body>之间的内容进行处理,然后把处理结果放到该包的Package
    Summary面中,最后把包描q文件的W一句(紧靠<body>Q放到输出的Overview summary面中,q在语句前面加上该包的包名?br />
    ?M概述文gQjavadoc可以创徏一个M概述文g描述整个应用或者所有包。M概述文g可以被Q意命名,也可以放|到L位置?overview选项可以指示M概述文g的\径和名称。M概述文g的内Ҏ使用HTML标记写的文档。javadoc在执行的时候,如果发现-overview选项Q那么它首先对文g?lt;body></body>之间的内容进行处理;然后把处理后的结果放到输出的Overview
    summary 面的底部;最后把M概述文g中的W一句放到输出的Overview summary面的顶部?br />
    ?其他杂文Ӟq些文g通常是指与javadoc输出的HTML文g相关的一些图片文件、Java源代码文Ӟ.javaQ、JavaE序Q?classQ、Java程序(AppletsQ、HTML文g。这些文件必L在doc-files目录中。每一个包都可以有自己的doc-files目录。D个例子,你希望在java.awt.Button的HTML文档中用一q按钮的囄QButton.gifQ。首先,你必L囄文g攑ֈC:\user\src\java\awt\doc-files\中;然后在Button.java文g中加入下面注?br />
    /**

    * This button looks like this:

    * <img src="doc-files/Button.gif">

    */
  • @files 包含文g。ؓ了简化javadoc命oQ你可以把需要徏立文档的文g名和包名攑֜一个或多个文本文g中。例如,Z化下面命令:

    javadoc -d apidoc com.mypackage1 com.mypackage2 com.mypackage3

    你可以徏立一个名UCؓmypackage.txt的文Ӟ其内容如下:

    com.mypackage1

    com.mypackage2

    com.mypackage3

    然后执行下面命o卛_Q?br />
    javadoc -d apidoc @mypackage.txt

  • options 命o行选项。javadoc使用docletsQdoclets是指用doclet API~写的程序。)来确定输出的内容和格式。命令行选项中一部分是可用于所有doclet的通用选项Q一部分是由默认的标准doclet提供的专用的选项。下面对各自一些常用的选项分别q行介绍Q?br />
    通用选项Q?br />
    ?-1.1 生成hjavadoc 1.1版本生成的文档的外观和功能的文档。不是所有的选项都可以用?1.1选项Q具体可以用javadoc
    -1.1 -help察看?br />
    ?-help 昄联机帮助?br />
    ?-bootclasspath classpathlist 指定"根类"Q通常是Javaq_自带的一些类。例如java.awt.*{)的\径?br />
    ?-sourcepath sourcepathlist 指定包的源文件搜索\径。但是必L意,只有在javadoc命o中指定了包名的时候才可以使用-sourcepath选项。如果指定了包名Q而省略了-sourcepathQ那么javadoc使用c\径查找源文g。D例说明:假定你打ؓcom.mypackage建立文档Q其源文件的位置是C:\user\src。那么你可以使用下面的命令:

    javadoc -sourcepath c:\user\src com.mypackage

    ?-classpath classpathlist 指定javadoc查找"引用c?的\径。引用类是指带文档的cd上它们引用的McRjavadoc搜索指定\径的所有子目录。Classpathlist可以包含多个路径Q?隔开Q。如果省?classpathQ则javadoc使用-sourcepath查找源文件和cL件。D例说明:假定你打ؓcom.mypackage建立文档Q其源文件的位置是C:\user\srcQ包依赖C:\user\lib中的库。那么你可以使用下面的命令:

    javadoc -classpath c:\user\lib -sourcepath c:\user\src com.mypackage

    ?-overview path\filename 告诉javadoc从path\filename所指定的文件中获取概述文档Qƈ且把它放到输出的概述面Qoverview-summary.htmlQ中。其中path\filename是相对于-sourcepath的相对\径?br />
    ?-public 只显C公q以及成员?br />
    ?-protected 只显C受保护的和公共的类以及成员。缺省选项?br />
    ?-package只显C包、受保护的和公共的类以及成员?br />
    ?-private 昄所有类和成员?

    ?-doclet class 指定javadoc产生输出内容的自定义docletcR如果忽略这个选项Qjavadoc用默认的doclet产生一pdHTML文档?br />
    ?-docletpath classpathlist ? doclet选项相关Q制定自定义的docletcL件的路径。Classpathlist可以包含多条路径Q用;隔开Q?br />
    ?-verbose 在javadocq行时提供更详细的信息?br />
    标准doclet专用选项Q?br />
    ?-author 在生成的文档中包?作?V?br />
    ?- d directory 指定javadoc保存生成的HTML文g的目录。省略该选项把文g保存在当前目录。Directory可以是绝对目录,也可以是相对当前目录的相对目录?br />
    ?-version 在生成的文档中包?版本"V?br />
    ?-use 为类和包生成"use"Q用法)面。这些页面描qC该类和包在javadoc命o涉及的文件中被用的情况。例如:对于l定的类CQ在C的用法页面中包含C的子c,cd为C的域Q返回变量类型ؓC的方法以及在参数中有变量cd为C的方法和构造器?br />
    ?strong> -splitindex 把烦引文件按照字母顺序分为多个文件。每一个文件对应一个字母?br />
    ?-windowtitle title 指定输出的HTML文档的标题?br />
    ?-header header 指定输出的HTML文档的页眉文本?br />
    ?-footer footer 指定输出的HTML文档的脚注文本?br />
    ?-bottom text 指定输出的HTML文档底部的文本?br />
    ?- group groupheading packagepatten;packagepatten;… 在M概述面中按照命令的指定方式分隔各个包。例如执行下面命令:

    javadoc -group "Core Packages" "java.lang*:java.util"

    -group "Extension Packages" "javax.*"

    java.lang java.lang.reflect java.util javax.servlet java.new

    在页面中有如下l果Q?br />
    Core Packages

    java.lang

    java.lang.reflect

    java.util

    Extension Packages

    javax.servlet

    Other Packages

    java.new

    ?- noindex 不输出烦引文件?br />
    ?- help 在文件的D条中忽略help链接?br />
    ?- helpfile path\filename 指定D条中的help链接所指向的帮助文件。忽略该选项Qjavadoc生成缺省的帮助文g?br />
    ?-stylesheetfile path\filename 指定javadoc的HTML样式表文件的路径。忽略该选项Qjavadoc自动生一个样式表文gstylesheet.css?br />
    通过上面的介l,我们了解了javadoc的命令行语法Q下面开始介ljavadoc文档注释Ҏ?br />
    javadoc注释?/**"开始,?*/"l束Q里面可以包含普通文本、HTML标记和javadoc标记。javadoc只处理源文g中在c?接口定义、方法、域、构造器之前的注释,忽略位于其他地方的注释。D例如下:
    /**

    *我的W一个程?-<b>Helloworld</b>

    *@author 王`

    *@version 1.0 2001/10/15

    */

    public class myHelloworld

    {

    /**

    *在main( )Ҏ中用的昄用字W串

    *@see #main(java.lang.String[])

    */

    static String SDisp

    使用下面命oQ?br />
    javadoc -private -d doc -author -version myHelloworld.java

    卛_以生成漂亮的关于myHelloworld.java的API文档了?br />
    上面例子中以@开头的标记是javadoc标记。在JavaE序中正用javadoc标记是一个良好的注释习惯Q将非常有助于javadoc自动从源代码文g生成完整的格式化API文档。下面就对各U标记进行详l说明?br />
    ?@author name-text 指定生成文档中的"作?,从JDK/SDK 1.0开始引入。name-text可以指定多个名字Q?,"隔开Q。文档注释可以包含多个类?br />
    ?{@docroot} 代表产生文档的根路径Q从JDK/SDK 1.3开始引入。用法D例如?br />
    /**

    *see the <a href={@docroot}/copyright.html>copyright</a>

    */

    假定生成文档的根目录是docQ上面注释所在的文g最后生成的文g是doc\utility\utl.htmlQ那?copyright"的链接会指向..\copyright.html?br />
    ?@deprecated deprecated-text d注释Q表明不推荐使用该API?br />
    ?@exception class-name description @throw的同义标讎ͼ从JDK/SDK 1.0开始引入?br />
    ?{@link package.class#member label} 插入指向package.class#member的内嵌链接,从JDK/SDK
    1.2开始引入。D例说明,假定注释中有如下文档Q?br />
    /** Use the {@link #getComponentAt(int, int) getComponentAt} method. */

    那么javadoc最l生成的HTML面中将有如下内?br />
    Use the <a href = "Component.html#getComponentAt(int,int)"
    > getComponentAt </a> method.

    ?@param parameter-name description 描述参数Q从JDK/SDK 1.0开始引入?br />
    ?@return description 描述q回|从JDK/SDK 1.0开始引入?br />
    ?@see reference d"参见"标题Q其中有指向reference的链接或者文本项Q从JDK/SDK
    1.0开始引入。@see标记有三UŞ式,下面分别说明Q?br />
    Q?Q、@see "string" ?string"d文本,不生链接?br />
    Q?Q、@see <a href="URL#Value">Label</a> 使用HTML标记产生链接

    Q?Q、@see package.class#member Label 使用Java语言的名字package.class #member产生链接?br />
    ?@serial field-description 用于~省可序列化域的注释Q从JDK/SDK 1.2开始引入?br />
    ?@serialField field-name field-type field-description 建立SerializablecȝserialPersistentFields成员的ObjectStreamFieldlg的文档,从JDK/SDK
    1.2开始引入?br />
    ?@serialData data-description data-description建立数据序列和类型的文档Q从JDK/SDK
    1.2开始引入?br />
    ?@since since-text 利用since-text内容为文档增?since"标题Q从JDK/SDK
    1.1开始引入?br />
    ?@throws class-name description 与@exception同义。用class-name和description出文档添?抛出"标题Q从JDK/SDK
    1.2开始引入?br />
    ?@version version-text d"版权"标题Q从JDK/SDK 1.0开始引入?br />
    上面介绍了标准doclet提供的所有标记。不q,需要注意这些标记的使用是有位置限制的。其中可以出现在cL者接口文档注释中的标记有Q@see、{@link}、@since、@deprecated、@author、@version。可以出现在Ҏ或者构造器文档注释中的标记有:@see、{@link}、@since、@deprecated、@param、@return、@throws、@exception、@serialData。可以出现在域文档注释中的有Q@see、{@link}、@since、@desprecated、@serial、@serialField?br />
    除了javadoc自n提供的标准标C外,我们可以定制自己的标记吗Q当然可以。只需要对javadoc标准的docletE序q行扩充卛_。实际上Q利用javadoc提供的doclet
    APIQ不仅可以扩充doclet标记Q甚臌可以改变javadoc的整个输出。ؓ了满需要,你可以javadoc输出普通文本、XML文g{。由于扩充doclet涉及到Java~程Q本文不再做深入介绍?br />
    MQjavadoc提供了完整规范的API文档功能。在软g目理中,合理C用javadoc不仅可以减少
    开?/font> 时的文档工作量,提高效率Q而且q非常有利于来软g的修改和l护?/font>


Masen 2007-12-20 19:51 发表评论
]]>
目中用url重写http://www.aygfsteel.com/masen/articles/125913.htmlMasenMasenFri, 22 Jun 2007 12:05:00 GMThttp://www.aygfsteel.com/masen/articles/125913.htmlhttp://www.aygfsteel.com/masen/comments/125913.htmlhttp://www.aygfsteel.com/masen/articles/125913.html#Feedback0http://www.aygfsteel.com/masen/comments/commentRss/125913.htmlhttp://www.aygfsteel.com/masen/services/trackbacks/125913.htmlUrlReWriter

1.    准备.jar?/span>

2.       创徏urlrewriter.xml文g.

3.       配置web.xml,?/span>urlrewriter的过滤器c配q去,指定qo?/span>urlQ所有后~都过?#8220;/*.

4.       配置urlrewriter.xml指定规则?/span>



Masen 2007-06-22 20:05 发表评论
]]>
目中用Tileshttp://www.aygfsteel.com/masen/articles/125912.htmlMasenMasenFri, 22 Jun 2007 12:04:00 GMThttp://www.aygfsteel.com/masen/articles/125912.htmlhttp://www.aygfsteel.com/masen/comments/125912.htmlhttp://www.aygfsteel.com/masen/articles/125912.html#Feedback0http://www.aygfsteel.com/masen/comments/commentRss/125912.htmlhttp://www.aygfsteel.com/masen/services/trackbacks/125912.htmlStruts?/span>Tiles使用

 

1.       Struts包中都有Tiles子包Q创?/span> tiles-defs.xml文gQ注意版本?/span>

2.       创徏Struts插gQ?/span>TilesPugin

3.       创徏模板?/span> 使用insert标签,创徏相应的子面?/span>

4.       配置tiles-defs.xml文g?/span>

5.       配置struts-config.xml, 通过*?/span>Do去访问?/span>

 

 

MyFaces中?/span>Tiles

1.       支持的类?/span>tomahawk包中?/span>

2.faces-config.xml中配|?/span>

<application>

       <view-handler>           org.apache.myfaces.tomahawk.application.jsp.JspTilesViewHandlerImpl

       </view-handler>

    </application>

2.    之后用法?/span>struts一栗?/span>



Masen 2007-06-22 20:04 发表评论
]]>
վ֩ģ壺 | | | | ̨| ȷ| | | | ư| | | | Ϫ| | ɽ| | | ̩˳| Ͻ| | | ƾ| غ| | Т| | | | | ½| ˱| | | | | | | ʲ| | |