<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><title type="text">博客园_木瓜网络</title><subtitle type="text">成长需要耐心</subtitle><id>http://feed.cnblogs.com/blog/u/62399/rss</id><updated>2011-08-16T04:01:01Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><generator>CNBlogs BlogServer</generator><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/"/><link rel="self" type="application/atom+xml" href="http://feed.cnblogs.com/blog/u/62399/rss"/><entry><id>http://www.cnblogs.com/daidu/archive/2011/08/16/2140442.html</id><title type="text">名字叫“Spark project”的超级强大的AS3</title><summary type="text">[SWF]一个名字叫“Spark project”的超级强大的AS3库这是一个超级大的项目工程，叫“Spark project”。在里面，你会找到不少实用的AS3类库，例如 swfassist ，一个解析SWF文件的库，支持Flash player 9，可以用as动态生成swf文件；又例如BMPDecoder、ICODecoder、PSDParser，从名字可以看出分别是用来解析bmp文件、 ico文件以及psd文件（没错，就是PhotoShop的源文件格式 PSD ！）；也有 AS3D 库，用来处理 3D 的；还有 SQLControls ，可以在AIR里方便操作SQLite数据库；还有很多</summary><published>2011-08-16T04:01:00Z</published><updated>2011-08-16T04:01:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2011/08/16/2140442.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2011/08/16/2140442.html"/><content type="html">&lt;div &gt;&#xD;
&lt;p&gt;&lt;strong&gt;[SWF]一个名字叫&amp;#8220;Spark project&amp;#8221;的超级强大的AS3库&lt;/strong&gt;&lt;/p&gt;&lt;/div&gt;&#xD;
&lt;div &gt;&#xD;
&lt;p&gt;这是一个超级大的项目工程，叫&amp;#8220;Spark project&amp;#8221;。在里面，你会找到不少实用的AS3类库，例如 swfassist ，一个解析SWF文件的库，支持Flash player 9，可以用as动态生成swf文件；又例如BMPDecoder、ICODecoder、PSDParser，从名字可以看出分别是用来解析bmp文件、 ico文件以及psd文件（没错，就是PhotoShop的源文件格式 PSD ！）；也有 AS3D 库，用来处理 3D 的；还有 &lt;span &gt;&lt;a title="SQL" href="http://www.mikel.cn/tag/sql/" target="_blank"&gt;&lt;font color="#005eac"&gt;SQL&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;Controls ，可以在AIR里方便操作&lt;span &gt;&lt;a title="SQL" href="http://www.mikel.cn/tag/sql/" target="_blank"&gt;&lt;font color="#005eac"&gt;SQL&lt;/font&gt;&lt;/a&gt;&lt;/span&gt;ite数据库；还有很多很多&amp;#8230;&amp;#8230; 总体来说，包含以下这些相关：&lt;/p&gt;&#xD;
&lt;ul&gt;&lt;li&gt;图形/颜色处理&lt;/li&gt;&lt;li&gt;显示对象处理&lt;/li&gt;&lt;li&gt;3D&lt;/li&gt;&lt;li&gt;图像处理&lt;/li&gt;&lt;li&gt;音频处理&lt;/li&gt;&lt;li&gt;通信处理&lt;/li&gt;&lt;li&gt;数学运算&lt;/li&gt;&lt;li&gt;物理现象&lt;/li&gt;&lt;li&gt;游戏算法&lt;/li&gt;&lt;li&gt;时间日期处理&lt;/li&gt;&lt;li&gt;Flash Player/系统&lt;/li&gt;&lt;li&gt;调试/测试&lt;/li&gt;&lt;li&gt;二进制文件处理（bmp、ico、psd等等）&lt;/li&gt;&lt;li&gt;其它&amp;#8230;&lt;/li&gt;&lt;/ul&gt;&#xD;
&lt;p&gt;该项目是日本人做的，幸好有英文版本的页面。要学会用应该也需要一段时间了，想要研究他们的源代码，想必不是一件快乐事 &lt;img  alt=":)" src="http://www.mikel.cn/wp-includes/images/smilies/icon_smile.gif" /&gt; &lt;/p&gt;&#xD;
&lt;p&gt;&lt;strong&gt;&lt;span style="color: rgb(255,0,0)"&gt;项目首页&lt;/span&gt;&lt;/strong&gt;：&lt;a title="Spark project" href="http://www.libspark.org/"&gt;&lt;font color="#005eac"&gt;http://www.libspark.org/&lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color: rgb(255,0,0)"&gt;一堆AS3类库的英文版页面&lt;/span&gt;&lt;/strong&gt;：&lt;a title="WikiStart/en - Spark project" href="http://www.libspark.org/wiki/WikiStart/en" target="_blank"&gt;&lt;font color="#005eac"&gt;http://www.libspark.org/wiki/WikiStart/en&lt;/font&gt;&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/2140442.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2011/08/16/2140442.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2011/06/20/2085501.html</id><title type="text">C#自动实现Dll(OCX)控件注册的两种方法</title><summary type="text">尽管MS为我们提供了丰富的.net framework库，我们的程序C#开发带来了极大的便利，但是有时候，一些特定功能的控件库还是需要由第三方提供或是自己编写。当需要用到Dll引用的时候，我们通常会通过“添加引用”的方式将它们纳入到项目中，然后就可以像使用自己的类一样方便的使用它们了。但是，有些Dll库(OCX)文件是需要注册到Windows注册表后才能正常添加和使用的。本文介绍两种为Dll库(OCX)自动注册的方法，为大家提供参考。首先，大家都知道在Windows的“运行”中，输入“Regsvr32.exe 路径”这样的方法来手动注册Dll控件(OCX)，显示这种方法对于程序的自动化部署等.</summary><published>2011-06-20T12:35:00Z</published><updated>2011-06-20T12:35:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2011/06/20/2085501.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2011/06/20/2085501.html"/><content type="html">&lt;span style="widows: 2; text-transform: none; background-color: rgb(255,255,255); text-indent: 0px; font: 13px/19px Verdana, Geneva, Arial, Helvetica, sans-serif; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" &gt; &#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;尽管MS为我们提供了丰富的.net framework库，我们的程序C#开发带来了极大的便利，但是有时候，一些特定功能的控件库还是需要由第三方提供或是自己编写。当需要用到Dll引用的时候，我们通常会通过&amp;#8220;添加引用&amp;#8221;的方式将它们纳入到项目中，然后就可以像使用自己的类一样方便的使用它们了。但是，有些Dll库(OCX)文件是需要注册到Windows注册表后才能正常添加和使用的。本文介绍两种为Dll库(OCX)自动注册的方法，为大家提供参考。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;首先，大家都知道在Windows的&amp;#8220;运行&amp;#8221;中，输入&amp;#8220;Regsvr32.exe 路径&amp;#8221;这样的方法来手动注册Dll控件(OCX)，显示这种方法对于程序的自动化部署等带来极大的不便，因此，今天我们着重介绍如何用C#实现自动注册。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;&lt;strong&gt;方法一：调用Regsvr32法&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;既然可以在运行栏中输入&amp;#8220;Regsvr32.exe 路径&amp;#8221;的方法来注册，那么，一定可以在C#程序中采用同样的方法来调用Regsvr32，以实现注册：&lt;/p&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;Process &lt;/span&gt;p = &lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;new &lt;/span&gt;&lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;Process&lt;/span&gt;();&#xD;
p.StartInfo.FileName = &lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;"Regsvr32.exe"&lt;/span&gt;;&#xD;
p.StartInfo.Arguments = &lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;"/s C:\\DllTest.dll"&lt;/span&gt;;&lt;span style="line-height: 1.5; color: green; font-size: 13px"&gt;//路径中不能有空格&#xD;
&lt;/span&gt;p.Start();&lt;/pre&gt;&lt;/div&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;采用这种方法，注意要添加对命名空间System.Diagnostics的引用：&lt;/p&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;using &lt;/span&gt;System.Diagnostics;&lt;/pre&gt;&lt;/div&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;另外，这种方法有一个不足之处，那就是注册工作是在本程序之外由Regsvr32.exe程序来完成的，系统内不方便知道注册的结果，也不方便对注册过程弹出的对话框进行自定义和控制。这里附Regsvr32的参数说明：(感谢网友&lt;a style="color: navy; text-decoration: none" href="http://www.cnblogs.com/wuhuacong/"&gt;伍华聪&lt;/a&gt;的提醒)&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;regsvr32.exe是32位系统下使用的DLL注册和反注册工具，使用它必须通过命令行的方式使用，格式是：&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;regsvr32 [/u] [/s] [/n] [/i[:cmdline]] DLL文件名&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;命令可以在&amp;#8220;开始&amp;#8594;运行&amp;#8221;的文本框中，也可以事先在bat批处理文档中编写好命令。未带任何参数是注册DLL文件功能，其它参数对应功能如下：&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;/u：反注册DLL文件;&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;/s：安静模式(Silent)执行命令，即在成功注册/反注册DLL文件前提下不显示结果提示框。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;/c：控制端口;&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;/i：在使用/u反注册时调用DllInstall;&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;/n：不调用DllRegisterServer，必须与/i连用。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;&lt;strong&gt;方法二：调用DllRegisterServer函数法&lt;/strong&gt;&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;既然方法一不大实用，那么我们就来寻找一种真正实用的方法来达到我们的目的吧。研究Regsvr32.exe和Dll文件，我们会发现，其实每个需要注册的文件都包括一个DllRegisterServer()方法，Regsvr32.exe就是通过调用该方法来完成Dll的注册的。呵呵，知道了这个，我们就可以自己调用DllRegisterServer()来完成注册过程啦。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;首先，还得引入外部方法：&lt;/p&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;[&lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;DllImport&lt;/span&gt;(&lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;"DllTest.dll"&lt;/span&gt;)]&#xD;
&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;public static extern int &lt;/span&gt;DllRegisterServer();//注册时用&#xD;
[&lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;DllImport&lt;/span&gt;(&lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;"DllTest.dll"&lt;/span&gt;)]&#xD;
&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;public static extern int &lt;/span&gt;DllUnregisterServer();//取消注册时用&lt;/pre&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;&lt;font color="#000000"&gt;接下来就不难啦：&lt;/font&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;int &lt;/span&gt;i = DllRegisterServer();&#xD;
&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;if &lt;/span&gt;(i &amp;gt;= 0)&#xD;
{&#xD;
    &lt;font color="#2b91af"&gt;//&lt;/font&gt;&lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;注册成功!&lt;/span&gt;&#xD;
}&#xD;
&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;else&#xD;
&lt;/span&gt;{&#xD;
    &lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;//&lt;/span&gt;&lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;注册失败&lt;br /&gt;&lt;/span&gt;}&lt;/pre&gt;取消注册的过程就不应再贴代码啦。 &#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;&lt;/p&gt;&lt;/div&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;两种方法介绍完啦，可是好像还缺点什么？对了，那就是对Dll是否已经注册过了的判断。一般情况下，我们可以将对Dll控件的注册过程放在系统启动的过程中来完成，但是，总不能每次启动都注册一次吧？这样做显然不合理。那么，我们就来判断一下，当前Dll是否已经注册过，如果已注册过，就跳过注册过程。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;每一个Dll的注册都会在注册表里记录下有关它本身的资料，如注册路径，唯一ID等。我们这里就是利用它留下的唯一ID号来判断：&lt;/p&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;RegistryKey &lt;/span&gt;rkTest = &lt;span style="line-height: 1.5; color: rgb(43,145,175); font-size: 13px"&gt;Registry&lt;/span&gt;.ClassesRoot.OpenSubKey(&lt;span style="line-height: 1.5; color: rgb(163,21,21); font-size: 13px"&gt;"CLSID\\{7713F78A-44DE-42BA-A1F6-3FB0BD6CA63B}\\"&lt;/span&gt;);&#xD;
&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;if &lt;/span&gt;(rkTest == &lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;null&lt;/span&gt;)&lt;br /&gt;{&lt;br /&gt;    &lt;span style="line-height: 1.5; color: green; font-size: 13px"&gt;//Dll没有注册，在这里调用DllRegisterServer()吧&lt;br /&gt;｝&lt;/span&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;注意要添加对命名空间Microsoft.Win32的引用：&lt;/p&gt;&#xD;
&lt;div &gt;&lt;pre style="margin-top: 0px; margin-bottom: 0px"&gt;&lt;span style="line-height: 1.5; color: blue; font-size: 13px"&gt;using &lt;/span&gt;Microsoft.Win32;&lt;/pre&gt;&lt;/div&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;其中的&amp;#8220;{7713F78A-44DE-42BA-A1F6-3FB0BD6CA63B}&amp;#8221;就是该Dll的唯一ID啦，每一个Dll文件都会不一样的。但是，问题又来了，怎么样知道它的唯一ID呢？其实很简单，那就是&amp;#8220;逆向思维&amp;#8221;。我们可先注册这个Dll文件，然后到注册表的&amp;#8220;HKEY_CLASSES_ROOT\CLSID&amp;#8221;分支下&amp;#8220;查找&amp;#8221;Dll的名称或路径，就可以看到这个ID啦。简单我就不多说啦。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;写到这里，该说的问题总算说完啦。大家如果还有什么疑问的话可以回帖提出。&lt;/p&gt;&#xD;
&lt;p style="line-height: 1.4; text-indent: 0px; margin: 5px auto; font-size: 13px"&gt;谢谢！&lt;br /&gt;《完》&lt;/p&gt;&lt;/span&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/2085501.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2011/06/20/2085501.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/10/26/1861514.html</id><title type="text">flash调试工具nl.demonsters.debugger.MonsterDebugger</title><summary type="text">De MonsterDebugger http://www.demonsterdebugger.com/ 是一个开源的Flex运行时调试器，不仅可以查看trace输出，还能以树型结构显示组件模型，并浏览每个组件的属性值，还可以在运行时动态修改属性的值，允许运行时调用组件的某些方法。1. 在 http://www.demonsterdebugger.com/ 下载 MonsterDebuggerV2...</summary><published>2010-10-26T06:50:00Z</published><updated>2010-10-26T06:50:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/10/26/1861514.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/10/26/1861514.html"/><content type="html">&lt;p&gt;De MonsterDebugger &lt;br /&gt;&lt;a href="http://www.demonsterdebugger.com/"&gt;&lt;font color="#108ac6"&gt;http://www.demonsterdebugger.com/ &lt;/font&gt;&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;是一个开源的Flex运行时调试器，不仅可以查看trace输出，还能以树型结构显示组件模型，并浏览每个组件的属性值，还可以在运行时动态修改属性的值，允许运行时调用组件的某些方法。&lt;br /&gt;&lt;br /&gt;1. 在 http://www.demonsterdebugger.com/ 下载 MonsterDebuggerV2_02.air (需要先安装AIR Runtime)&lt;br /&gt;&lt;br /&gt;2. 将MonsterDebuggerV2_02.air安装到硬盘里，并启动此程序&lt;br /&gt;&lt;br /&gt;3. 选 File &amp;gt; Export Client Class 指定输出路径为你 flex project 的 src 目录。如果成功，你将在src目录看到 nl\demonsters\debugger\MonsterDebugger.as 文件&amp;nbsp; (看包名这个应该是荷兰公司写的)&lt;br /&gt;&lt;br /&gt;4. 写个程序来试一下&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;div &gt;&#xD;
&lt;div &gt;&#xD;
&lt;div &gt;Mxml代码 &lt;a title="复制代码" onclick="dp.sh.Toolbar.CopyToClipboard(this);return false;" href="http://wangcheng.javaeye.com/blog/364431#"&gt;&lt;img alt="复制代码" src="http://wangcheng.javaeye.com/images/icon_copy.gif" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;ol &gt;&lt;li&gt;&lt;span&gt;&amp;lt;mx:Application&amp;nbsp;xmlns:mx=&lt;/span&gt;&lt;span &gt;"http://www.adobe.com/2006/mxml"&lt;/span&gt;&lt;span&gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;layout=&lt;/span&gt;&lt;span &gt;"absolute"&lt;/span&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;creationComplete=&lt;/span&gt;&lt;span &gt;"onInit()"&lt;/span&gt;&lt;span&gt;&amp;gt; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;mx:Script&amp;gt; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;![CDATA[ &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;导入&amp;nbsp;MonsterDebugger &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;import&amp;nbsp;nl.demonsters.debugger.MonsterDebugger; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;声明&amp;nbsp;debugger&amp;nbsp;变量 &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;var&amp;nbsp;debugger&amp;nbsp;:&amp;nbsp;MonsterDebugger; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;private&amp;nbsp;function&amp;nbsp;onInit()&amp;nbsp;:&amp;nbsp;void&amp;nbsp;{ &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;初始化&amp;nbsp;the&amp;nbsp;debugger &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;debugger&amp;nbsp;=&amp;nbsp;new&amp;nbsp;MonsterDebugger(this); &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;//&amp;nbsp;发送一个简单的&amp;nbsp;trace&amp;nbsp;消息 &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;MonsterDebugger.trace(this,&amp;nbsp;&lt;/span&gt;&lt;span &gt;"Hello&amp;nbsp;MonsterDebugger!"&lt;/span&gt;&lt;span&gt;); &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;]]&amp;gt; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;/mx:Script&amp;gt; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;lt;/mx:Application&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;pre  style="display: none" name="code"&gt;&lt;/pre&gt;&amp;nbsp;&#xD;
&lt;p&gt;看看MonsterDebugger的TRACES窗口中，你的消息已经打印出来了。&lt;/p&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/1861514.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/10/26/1861514.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/06/30/1768670.html</id><title type="text">MVC框架Struts2学习笔记（2）：Struts2的常量详解(转载)</title><summary type="text">通常struts2加载struts2常量的顺序如下: 1.  struts-default.xml：该文件保存在struts2-core-2.0.6.jar文件中。2.  struts-plugin.xml：该文件保存在struts2-Xxx-2.0.6.jar等Struts2插件JAR文件中。3.  struts.xml：该文件是Web应用默认的Struts2配置文件。4.  struts.pr...</summary><published>2010-06-30T13:55:00Z</published><updated>2010-06-30T13:55:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768670.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768670.html"/><content type="html">&lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;strong&gt;通常struts2加载struts2常量的顺序如下:&lt;/strong&gt;  &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;1.  struts-default.xml：该文件保存在struts2-core-2.0.6.jar文件中。&lt;br /&gt;2.  struts-plugin.xml：该文件保存在struts2-Xxx-2.0.6.jar等Struts2插件JAR文件中。&lt;br /&gt;3.  struts.xml：该文件是Web应用默认的Struts2配置文件。&lt;br /&gt;4.  struts.properties：该文件是Web应用默认的Struts2配置文件。&lt;br /&gt;5.  web.xml：该文件是Web应用的配置文件。&lt;br /&gt;&lt;br /&gt;如果在多个文件中配置了同一个Struts2常量，则后一个文件中的配置的常量值会覆盖前面文件中配置的常量值。&lt;br /&gt;在不同文件中配置常量的方式是不一样的，但不管哪个文件中，配置Struts2常量都要指定两个属性：常量name和常量value。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;推荐在struts.xml文件中配置Struts2常量。&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;启动Tomcat时在控制台可看到上述配置文件的加载顺序：&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span&gt;此处只加载了前三个配置文件，这是在常量&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;struts.configuration.files中配置的。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架默认加载的配置文件，如果需要指定默认加载多个配置文件，则多个配置文件的文件名之间以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。该属性的默认值为&lt;/span&gt;&lt;span style="color: #000000;"&gt;struts-  default.xml,struts-plugin.xml,struts.xml&lt;/span&gt;&lt;span style="color: #000000;"&gt;，这就是上图中加载的三个配置文件。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span&gt;&lt;span&gt;Struts2常量一览：&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;struts.configuration&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定加载&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;配置文件的配置文件管理器。该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;org.apache.Struts2.config.DefaultConfiguration&lt;/span&gt;&lt;span style="color: #000000;"&gt;，这是&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;默认的配置文件管理器。如果需要实现自己的配置管理器，开发者则可以实现一个实现&lt;/span&gt;&lt;span style="color: #000000;"&gt;Configuration&lt;/span&gt;&lt;span style="color: #000000;"&gt;接口的类，该类可以自己加载&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;配置文件。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;struts.locale&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;指定&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用的默认&lt;/span&gt;&lt;span style="color: #000000;"&gt;Locale&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.i18n.encoding&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;指定&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用的默认编码集。该属性对于处理中文请求参数非常有用，对于获取中文请求参数值，应该将该属性值设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;GBK&lt;/span&gt;&lt;span style="color: #000000;"&gt;或者&lt;/span&gt;&lt;span style="color: #000000;"&gt;GB2312&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;提示：当设置该参数为&lt;span style="color: #000000;"&gt;GBK&lt;/span&gt;&lt;span style="color: #000000;"&gt;时，相当于调用&lt;/span&gt;&lt;span style="color: #000000;"&gt;HttpServletRequest&lt;/span&gt;&lt;span style="color: #000000;"&gt;的&lt;/span&gt;&lt;span style="color: #000000;"&gt;setCharacterEncoding&lt;/span&gt;&lt;span style="color: #000000;"&gt;方法。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;struts.objectFactory&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;默认的&lt;/span&gt;&lt;span style="color: #000000;"&gt;ObjectFactory Bean&lt;/span&gt;&lt;span style="color: #000000;"&gt;，该属性默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;spring&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.objectFactory.spring.autoWrite&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;指定&lt;span style="color: #000000;"&gt;Spring&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架的自动装配模式，该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;name&lt;/span&gt;&lt;span style="color: #000000;"&gt;，即默认根据&lt;/span&gt;&lt;span style="color: #000000;"&gt;Bean&lt;/span&gt;&lt;span style="color: #000000;"&gt;的&lt;/span&gt;&lt;span style="color: #000000;"&gt;name&lt;/span&gt;&lt;span style="color: #000000;"&gt;属性自动装配。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.objectFactory.spring.useClassCache&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定整合&lt;span style="color: #000000;"&gt;Spring&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架时，是否缓存&lt;/span&gt;&lt;span style="color: #000000;"&gt;Bean&lt;/span&gt;&lt;span style="color: #000000;"&gt;实例，该属性只允许使用&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;两个属性值，它的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。通常不建议修改该属性值。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;struts.objectTypeDeterminer&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;的类型检测机制，通常支持&lt;/span&gt;&lt;span style="color: #000000;"&gt;tiger&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;notiger&lt;/span&gt;&lt;span style="color: #000000;"&gt;两个属性值。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.multipart.parser&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定处理&lt;span style="color: #000000;"&gt;multipart/form-data&lt;/span&gt;&lt;span style="color: #000000;"&gt;的&lt;/span&gt;&lt;span style="color: #000000;"&gt;MIME&lt;/span&gt;&lt;span style="color: #000000;"&gt;类型（文件上传）请求的框架，该属性支持&lt;/span&gt;&lt;span style="color: #000000;"&gt;cos&lt;/span&gt;&lt;span style="color: #000000;"&gt;、&lt;/span&gt;&lt;span style="color: #000000;"&gt;pell&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;jakarta&lt;/span&gt;&lt;span style="color: #000000;"&gt;等属性值，即&lt;/span&gt;&lt;span style="color: #000000;"&gt;分别对应使用&lt;/span&gt;&lt;span style="color: #000000;"&gt;cos&lt;/span&gt;&lt;span style="color: #000000;"&gt;的文件上传框架、&lt;/span&gt;&lt;span style="color: #000000;"&gt;pell&lt;/span&gt;&lt;span style="color: #000000;"&gt;上传及&lt;/span&gt;&lt;span style="color: #000000;"&gt;common-fileupload&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件上传框架。该属性的默认值为&lt;/span&gt;&lt;span style="color: #000000;"&gt;jakarta&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;注意 &lt;span style="color: #000000;"&gt;如果需要使用&lt;/span&gt;&lt;span style="color: #000000;"&gt;cos&lt;/span&gt;&lt;span style="color: #000000;"&gt;或者&lt;/span&gt;&lt;span style="color: #000000;"&gt;pell&lt;/span&gt;&lt;span style="color: #000000;"&gt;的文件上传方式，则应该将对应的&lt;/span&gt;&lt;span style="color: #000000;"&gt;JAR&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件复制到&lt;/span&gt;&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用中。例如，使用&lt;/span&gt;&lt;span style="color: #000000;"&gt;cos&lt;/span&gt;&lt;span style="color: #000000;"&gt;上传方式，则需要自己下载&lt;/span&gt;&lt;span style="color: #000000;"&gt;cos&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架的&lt;/span&gt;&lt;span style="color: #000000;"&gt;JAR&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件，并将该文件放在&lt;/span&gt;&lt;span style="color: #000000;"&gt;WEB-INF/lib&lt;/span&gt;&lt;span style="color: #000000;"&gt;路径下。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.multipart.saveDir&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定上传文件的临时保存路径，该属性的默认值是&lt;span style="color: #000000;"&gt;javax.servlet.context.tempdir&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.multipart.maxSize&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件上传中整个请求内容允许的最大字节数。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.custom.properties&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用加载用户自定义的属性文件，该自定义属性文件指定的属性不会覆盖&lt;/span&gt;&lt;span style="color: #000000;"&gt;struts.properties&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件中指定的属性。如果需要加载多个自定义属性文件，多个自定义属性文件的文件名以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.mapper.class&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;指定将&lt;span style="color: #000000;"&gt;HTTP&lt;/span&gt;&lt;span style="color: #000000;"&gt;请求映射到指定&lt;/span&gt;&lt;span style="color: #000000;"&gt;Action&lt;/span&gt;&lt;span style="color: #000000;"&gt;的映射器，&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;提供了默认的映射器：&lt;/span&gt;&lt;span style="color: #000000;"&gt;org.apache.struts2.dispatcher.mapper.DefaultActionMapper&lt;/span&gt;&lt;span style="color: #000000;"&gt;。默认映射器根据请求的前缀与&lt;/span&gt;&lt;span style="color: #000000;"&gt;Action&lt;/span&gt;&lt;span style="color: #000000;"&gt;的&lt;/span&gt;&lt;span style="color: #000000;"&gt;name&lt;/span&gt;&lt;span style="color: #000000;"&gt;属性完成映射。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.action.extension&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定需要&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;处理的请求后缀，该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;action&lt;/span&gt;&lt;span style="color: #000000;"&gt;，即所有匹配&lt;/span&gt;&lt;span style="color: #000000;"&gt;*.action&lt;/span&gt;&lt;span style="color: #000000;"&gt;的请求都由&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;处理。如果用户需要指定多个请求后缀，则多个后缀之间以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.serve.static&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置是否通过&lt;span style="color: #000000;"&gt;JAR&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件提供静态内容服务，该属性只支持&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;属性值，该属性的默认属性值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.serve.static.browserCache&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置浏览器是否缓存静态内容。当应用处于开发阶段时，我们希望每次请求都获得服务器的最新响应，则可设置该属性为&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.enable.DynamicMethodInvocation&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;是否支持动态方法调用，该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。如果需要关闭动态方法调用，则可设置该属性为&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;span style="color: #000000;"&gt;  &lt;p&gt;&lt;/p&gt;&lt;/span&gt;&lt;/span&gt; &lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.enable.SlashesInActionNames&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;是否允许在&lt;/span&gt;&lt;span style="color: #000000;"&gt;Action&lt;/span&gt;&lt;span style="color: #000000;"&gt;名中使用斜线，该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。如果开发者希望允许在&lt;/span&gt;&lt;span style="color: #000000;"&gt;Action&lt;/span&gt;&lt;span style="color: #000000;"&gt;名中使用斜线，则可设置该属性为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.tag.altSyntax&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定是否允许在&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;标签中使用表达式语法，因为通常都需要在标签中使用表达式语法，故此属性应该设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;，该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.devMode&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用是否使用开发模式。如果设置该属性为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;，则可以在应用出错时显示更多、更友好的出错提示。该属性只接受&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;flase&lt;/span&gt;&lt;span style="color: #000000;"&gt;两个值，该属性的&lt;/span&gt;&lt;span style="color: #000000;"&gt;默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。通常，应用在开发阶段，将该属性设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;，当进入产品发布阶段后，则该属性设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.i18n.reload&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置是否每次&lt;span style="color: #000000;"&gt;HTTP&lt;/span&gt;&lt;span style="color: #000000;"&gt;请求到达时，系统都重新加载资源文件。该属性默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。在开发阶段将该属性设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;会更有利于开发，但在产品发布阶段应将该属性设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span&gt;提示：开发阶段将该属性设置了true，将可以在每次请求时都重新加载国际化资源文件，从而可以让开发者看到实时开发效果；产品发布阶段应该将该属性设置为  false，是为了提供响应性能，每次请求都需要重新加载资源文件会大大降低应用的性能。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.ui.theme&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定视图标签默认的视图主题，该属性的默认值是&lt;span style="color: #000000;"&gt;xhtml&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.ui.templateDir&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定视图主题所需要模板文件的位置，该属性的默认值是&lt;span style="color: #000000;"&gt;template&lt;/span&gt;&lt;span style="color: #000000;"&gt;，即默认加载&lt;/span&gt;&lt;span style="color: #000000;"&gt;template&lt;/span&gt;&lt;span style="color: #000000;"&gt;路径下的模板文件。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.ui.templateSuffix&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定模板文件的后缀，该属性的默认属性值是&lt;span style="color: #000000;"&gt;ftl&lt;/span&gt;&lt;span style="color: #000000;"&gt;。该属性还允许使用&lt;/span&gt;&lt;span style="color: #000000;"&gt;ftl&lt;/span&gt;&lt;span style="color: #000000;"&gt;、&lt;/span&gt;&lt;span style="color: #000000;"&gt;vm&lt;/span&gt;&lt;span style="color: #000000;"&gt;或&lt;/span&gt;&lt;span style="color: #000000;"&gt;jsp&lt;/span&gt;&lt;span style="color: #000000;"&gt;，分别对应&lt;/span&gt;&lt;span style="color: #000000;"&gt;FreeMarker&lt;/span&gt;&lt;span style="color: #000000;"&gt;、&lt;/span&gt;&lt;span style="color: #000000;"&gt;Velocity&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;JSP&lt;/span&gt;&lt;span style="color: #000000;"&gt;模板。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.configuration.xml.reload&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性设置当&lt;span style="color: #000000;"&gt;struts.xml&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件改变后，系统是否自动重新加载该文件。该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.velocity.configfile&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Velocity&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架所需的&lt;/span&gt;&lt;span style="color: #000000;"&gt;velocity.properties&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件的位置。该属性的默认值为&lt;/span&gt;&lt;span style="color: #000000;"&gt;velocity.properties&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.velocity.contexts&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Velocity&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架的&lt;/span&gt;&lt;span style="color: #000000;"&gt;Context&lt;/span&gt;&lt;span style="color: #000000;"&gt;位置，如果该框架有多个&lt;/span&gt;&lt;span style="color: #000000;"&gt;Context&lt;/span&gt;&lt;span style="color: #000000;"&gt;，则多个&lt;/span&gt;&lt;span style="color: #000000;"&gt;Context&lt;/span&gt;&lt;span style="color: #000000;"&gt;之间以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.velocity.toolboxlocation&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Velocity&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架的&lt;/span&gt;&lt;span style="color: #000000;"&gt;toolbox&lt;/span&gt;&lt;span style="color: #000000;"&gt;的位置。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.url.http.port&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用所在的监听端口。该属性通常没有太大的用处，只是当&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts 2&lt;/span&gt;&lt;span style="color: #000000;"&gt;需要生成&lt;/span&gt;&lt;span style="color: #000000;"&gt;URL&lt;/span&gt;&lt;span style="color: #000000;"&gt;时（例如&lt;/span&gt;&lt;span style="color: #000000;"&gt;Url&lt;/span&gt;&lt;span style="color: #000000;"&gt;标签），该属性才提供&lt;/span&gt;&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用的默认端口。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.url.https.port&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性类似于&lt;span style="color: #000000;"&gt;struts.url.http.port&lt;/span&gt;&lt;span style="color: #000000;"&gt;属性的作用，区别是该属性指定的是&lt;/span&gt;&lt;span style="color: #000000;"&gt;Web&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用的加密服务端口。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.url.includeParams&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;生成&lt;/span&gt;&lt;span style="color: #000000;"&gt;URL&lt;/span&gt;&lt;span style="color: #000000;"&gt;时是否包含请求参数。该属性接受&lt;/span&gt;&lt;span style="color: #000000;"&gt;none&lt;/span&gt;&lt;span style="color: #000000;"&gt;、&lt;/span&gt;&lt;span style="color: #000000;"&gt;get&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;all&lt;/span&gt;&lt;span style="color: #000000;"&gt;三个属性值，分别对应于不包含、仅包含&lt;/span&gt;&lt;span style="color: #000000;"&gt;GET&lt;/span&gt;&lt;span style="color: #000000;"&gt;类型请求参数和包含全部请求参数。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.custom.i18n.resources&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;应用所需要的国际化资源文件，如果有多份国际化资源文件，则多个资源文件的文件名以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.dispatcher.parametersWorkaround&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;对于某些&lt;span style="color: #000000;"&gt;Java  EE&lt;/span&gt;&lt;span style="color: #000000;"&gt;服务器，不支持&lt;/span&gt;&lt;span style="color: #000000;"&gt;HttpServlet Request&lt;/span&gt;&lt;span style="color: #000000;"&gt;调用&lt;/span&gt;&lt;span style="color: #000000;"&gt;getParameterMap()&lt;/span&gt;&lt;span style="color: #000000;"&gt;方法，此时可以设置该属性值为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;来解决该问题。该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。对于&lt;/span&gt; &lt;span style="color: #000000;"&gt;WebLogic&lt;/span&gt;&lt;span style="color: #000000;"&gt;、&lt;/span&gt;&lt;span style="color: #000000;"&gt;Orion&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;OC4J&lt;/span&gt;&lt;span style="color: #000000;"&gt;服务器，通常应该设置该属性为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.freemarker.manager.classname&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;使用的&lt;/span&gt;&lt;span style="color: #000000;"&gt;FreeMarker&lt;/span&gt;&lt;span style="color: #000000;"&gt;管理器。该属性的默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;org.apache.struts2.views.freemarker.FreemarkerManager&lt;/span&gt;&lt;span style="color: #000000;"&gt;，这是&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;内建的&lt;/span&gt;&lt;span style="color: #000000;"&gt;FreeMarker&lt;/span&gt;&lt;span style="color: #000000;"&gt;管理器。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.freemarker.wrapper.altMap&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性只支持&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;和&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;两个属性值，默认值是&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;。通常无需修改该属性值。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.xslt.nocache&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;XSLT  Result&lt;/span&gt;&lt;span style="color: #000000;"&gt;是否使用样式表缓存。当应用处于开发阶段时，该属性通常被设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;true&lt;/span&gt;&lt;span style="color: #000000;"&gt;；当应用处于产品使用阶段时，该属性通常被设置为&lt;/span&gt;&lt;span style="color: #000000;"&gt;false&lt;/span&gt;&lt;span style="color: #000000;"&gt;。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-size: 14pt;"&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;struts.configuration.files&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span&gt;&lt;span style="font-size: small;"&gt;&lt;span style="color: #000000;"&gt;该属性指定&lt;span style="color: #000000;"&gt;Struts  2&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架默认加载的配置文件，如果需要指定默认加载多个配置文件，则多个配置文件的文件名之间以英文逗号（&lt;/span&gt;&lt;span style="color: #000000;"&gt;,&lt;/span&gt;&lt;span style="color: #000000;"&gt;）隔开。该属性的默认值为&lt;/span&gt;&lt;span style="color: #000000;"&gt;struts-  default.xml,struts-plugin.xml,struts.xml&lt;/span&gt;&lt;span style="color: #000000;"&gt;，看到该属性值，读者应该明白为什么&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts 2&lt;/span&gt;&lt;span style="color: #000000;"&gt;框架默认加载&lt;/span&gt;&lt;span style="color: #000000;"&gt;struts.xml&lt;/span&gt;&lt;span style="color: #000000;"&gt;文件了。&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt; &lt;p&gt;&lt;/p&gt; &lt;p&gt;&lt;strong&gt;&lt;span&gt;&lt;span&gt;Struts2常量的具体用法实例&lt;/span&gt;&lt;/span&gt;&lt;/strong&gt;  &lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;lt;?xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"&amp;nbsp;?&amp;gt;&amp;nbsp; &lt;/span&gt;&lt;/p&gt;&lt;p&gt;&amp;lt;!DOCTYPE&amp;nbsp;struts&amp;nbsp;PUBLIC &amp;nbsp;&amp;nbsp;&lt;/p&gt;&lt;p&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp; "-//Apache&amp;nbsp;Software&amp;nbsp;Foundation//DTD&amp;nbsp;Struts&amp;nbsp;Configuration&amp;nbsp;2.0//EN"  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/p&gt;  &lt;div&gt;&lt;ol&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"http://struts.apache.org/dtds/struts-2.0.dtd"&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;lt;struts&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定Web应用的默认编码集,相当于调用HttpServletRequest的setCharacterEncoding方法&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.i18n.encoding"&amp;nbsp;value="UTF-8"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!-- &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;该属性指定需要Struts&amp;nbsp;2处理的请求后缀，该属性的默认值是action，即所有匹配*.action的请求都由Struts2处理。  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;如果用户需要指定多个请求后缀，则多个后缀之间以英文逗号（,）隔开。 &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.action.extension"&amp;nbsp;value="do"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置浏览器是否缓存静态内容,默认值为true(生产环境下使用),开发阶段最好关闭&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.serve.static.browserCache"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;当struts的配置文件修改后,系统是否自动重新加载该文件,默认值为false(生产环境下使用),开发阶段最好打开&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.configuration.xml.reload"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;开发模式下使用,这样可以打印出更详细的错误信息&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.devMode"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;默认的视图主题&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.ui.theme"&amp;nbsp;value="simple"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;spring&amp;nbsp;托管&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.objectFactory"&amp;nbsp;value="spring"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!-- &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;指定加载struts2配置文件管理器，默认为org.apache.struts2.config.DefaultConfiguration  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;开发者可以自定义配置文件管理器，该类要实现Configuration接口，可以自动加载struts2配置文件。  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.configuration"&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value="org.apache.struts2.config.DefaultConfiguration"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置默认的locale和字符编码&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.locale"&amp;nbsp;value="zh_CN"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.i18n.encoding"&amp;nbsp;value="GBK"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定Struts的工厂类&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.objectFactory"&amp;nbsp;value="spring"&amp;gt;&amp;lt;/constant&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!-- &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;指定spring框架的装配模式，装配方式有:&amp;nbsp;name,&amp;nbsp;type,&amp;nbsp;auto,&amp;nbsp;and&amp;nbsp;constructor&amp;nbsp;(name  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;是默认装配模式) &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.objectFactory.spring.autoWire"&amp;nbsp;value="name"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;该属性指定整合spring时，是否对bean进行缓存，值为true&amp;nbsp;or&amp;nbsp;false,默认为true&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.objectFactory.spring.useClassCache"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定类型检查,包含tiger和notiger&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.objectTypeDeterminer"&amp;nbsp;value="tiger"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;该属性指定处理&amp;nbsp;MIME-type&amp;nbsp;multipart/form-data，文件上传&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.multipart.parser"&amp;nbsp;value="cos"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.multipart.parser"&amp;nbsp;value="pell"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.multipart.parser"&amp;nbsp;value="jakarta"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定上传文件时的临时目录，默认使用&amp;nbsp;javax.servlet.context.tempdir&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.multipart.saveDir"&amp;nbsp;value="/tmpuploadfiles"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;该属性指定Struts&amp;nbsp;2文件上传中整个请求内容允许的最大字节数&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.multipart.maxSize"&amp;nbsp;value="2097152"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!-- &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;该属性指定Struts2应用加载用户自定义的属性文件，该自定义属性文件指定的属性不会覆盖 &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;struts.properties文件中指定的属性。如果需要加载多个自定义属性文件，多个自定义属性文  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;件的文件名以英文逗号（,）隔开。(也就是说不要改写struts.properties!) &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.custom.properties"&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value="application,org/apache/struts2/extension/custom"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定请求url与action映射器，默认为org.apache.struts2.dispatcher.mapper.DefaultActionMapper&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.mapper.class"&amp;nbsp;value="org.apache.struts2.dispatcher.mapper.DefaultActionMapper"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定action的后缀，默认为action&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.action.extension"&amp;nbsp;value="do"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;被&amp;nbsp;FilterDispatcher使用指定浏览器是否缓存静态内容，测试阶段设置为false，发布阶段设置为true.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.serve.static.browserCache"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置是否支持动态方法调用，true为支持，false不支持.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.enable.DynamicMethodInvocation"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置是否可以在action中使用斜线，默认为false不可以，想使用需设置为true.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.enable.SlashesInActionNames"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;是否允许使用表达式语法，默认为true.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;constant&amp;nbsp;name="struts.tag.altSyntax"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置当struts.xml文件改动时，是否重新加载&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.configuration.xml.reload"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置struts是否为开发模式，默认为false,测试阶段一般设为true.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.devMode"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置是否每次请求，都重新加载资源文件，默认值为false.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.i18n.reload"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;标准的UI主题，默认的UI主题为xhtml,可以为simple,xhtml或ajax&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.ui.theme"&amp;nbsp;value="xhtml"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;模板目录&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.ui.templateDir"&amp;nbsp;value="template"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置模板类型.&amp;nbsp;可以为&amp;nbsp;ftl,&amp;nbsp;vm,&amp;nbsp;or&amp;nbsp;jsp&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.ui.templateSuffix"&amp;nbsp;value="ftl"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;定位velocity.properties&amp;nbsp;文件.&amp;nbsp;默认velocity.properties&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.velocity.configfile"&amp;nbsp;value="velocity.properties"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置velocity的context.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.velocity.contexts"&amp;nbsp;value="...."&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;定位toolbox&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.velocity.toolboxlocation"&amp;nbsp;value="...."&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定web应用的端口&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.url.http.port"&amp;nbsp;value="80"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定加密端口&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.url.https.port"&amp;nbsp;value="443"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置生成url时，是否包含参数.值可以为:&amp;nbsp;none,get&amp;nbsp;or&amp;nbsp;all&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.url.includeParams"&amp;nbsp;value="get"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置要加载的国际化资源文件，以逗号分隔.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.custom.i18n.resources"&amp;nbsp;value="application"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&lt;span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;对于一些web应用服务器不能处理HttpServletRequest.getParameterMap(),  &amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;像&amp;nbsp;WebLogic,Orion,&amp;nbsp;and&amp;nbsp;OC4J等，须设置成true,默认为false.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.dispatcher.parametersWorkaround"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定freemarker管理器&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.freemarker.manager.classname"&amp;nbsp;value="org.apache.struts2.views.freemarker.FreemarkerManager"&amp;nbsp;/&amp;gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置是否对freemarker的模板设置缓存,效果相当于把template拷贝到&amp;nbsp;WEB_APP/templates.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.freemarker.templatesCache"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;通常不需要修改此属性.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.freemarker.wrapper.altMap"&amp;nbsp;value="true"&amp;nbsp;/&amp;gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;指定xslt&amp;nbsp;result是否使用样式表缓存.开发阶段设为true,发布阶段设为false.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.xslt.nocache"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设置struts自动加载的文件列表.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.configuration.files"&amp;nbsp;value="struts-default.xml,struts-plugin.xml,struts.xml"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;!--&amp;nbsp;设定是否一直在最后一个slash之前的任何位置选定namespace.&amp;nbsp;--&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;cosntant&amp;nbsp;name="struts.mapper.alwaysSelectFullNamespace"&amp;nbsp;value="false"&amp;nbsp;/&amp;gt;&amp;nbsp;&amp;nbsp;&lt;/li&gt;&lt;li&gt;&amp;lt;/struts&amp;gt;&amp;nbsp; &lt;br /&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/div&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/1768670.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768670.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/06/30/1768662.html</id><title type="text">MVC框架Struts2学习笔记（2）：Action详解</title><summary type="text">Action中的默认值如果没有指定Action.默认是ActionSupport如果没有指定的method。默认的是action中的execute()方法。如果没有指定的result 的name属性。默认的是success.[代码]Action视图转发方式1、从定向到特定的视图---redirect通过result的type属性设置：代码Code highlighting produced by ...</summary><published>2010-06-30T13:45:00Z</published><updated>2010-06-30T13:45:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768662.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768662.html"/><content type="html">&lt;p&gt;&lt;strong style="color: #800000;"&gt;Action中的默认值&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;如果没有指定Action.默认是ActionSupport&lt;/p&gt;&lt;p&gt;如果没有指定的method。默认的是action中的execute()方法。&lt;/p&gt;&lt;p&gt;如果没有指定的result 的name属性。默认的是success.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;action&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="test"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;result&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;/page/hello.jsp&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;result&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;action&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;strong style="color: #800000;"&gt;&amp;nbsp;Action视图转发方式&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、从定向到特定的视图---redirect&lt;/p&gt;&lt;p&gt;通过result的type属性设置：&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;" onclick="cnblogs_code_show('786055e6-1ca2-4798-90d6-efd72ff1201f')"&gt;&lt;img src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"  id="code_img_opened_01483867-1b59-4bcd-9c86-d5bf53288b42" onclick="cnblogs_code_hide('01483867-1b59-4bcd-9c86-d5bf53288b42',event)"&gt;&lt;div id="cnblogs_code_open_01483867-1b59-4bcd-9c86-d5bf53288b42"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;package&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="redirectActionP"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;action&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="redirectAction"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;result&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="actionName"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;hello&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="namespace"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;/test&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;result&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;action&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;package&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;其中的&lt;span style="color: #0000ff;"&gt;redirectAction&lt;/span&gt; Action将重定向到命名空间&lt;span style="color: #000000;"&gt;/test&lt;/span&gt;下的&lt;span style="color: #000000;"&gt;hello&lt;/span&gt;这个Action.&lt;/p&gt;&lt;p&gt;对于重定向的如果重定向的Action没有和自己在一个package下的时候，设置 result的时候必须设置命名空间namespace和actionName属性。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong style="color: #800000;"&gt;Action属性的注入&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;在Action标签xianmia&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&amp;nbsp;&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;="userName"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;daidu&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;param&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/1768662.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/06/30/1768662.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/06/29/1767924.html</id><title type="text">MVC框架Struts2学习笔记（2）：Struts2 helloWorld</title><summary type="text">1、搭建环境：参考MVC框架Struts2学习笔记（1）2、配置struts.xml:代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--&amp;gt;&amp;lt;?xmlversion="1.0"encoding="UTF-8"?&amp;gt;&amp;lt;!DOCTYPEstr...</summary><published>2010-06-29T15:00:00Z</published><updated>2010-06-29T15:00:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767924.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767924.html"/><content type="html">&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt; &lt;p&gt;1、搭建环境：参考MVC框架Struts2学习笔记（1）&lt;/p&gt;&lt;p&gt;2、配置struts.xml:&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;" onclick="cnblogs_code_show('f1ea6c9c-765c-441e-8a18-73a6e085ed5c')"&gt;&lt;img src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"  id="code_img_opened_d67777c2-7de3-4d6c-83f4-23d348a6d8cc" onclick="cnblogs_code_hide('d67777c2-7de3-4d6c-83f4-23d348a6d8cc',event)"&gt;&lt;div id="cnblogs_code_open_d67777c2-7de3-4d6c-83f4-23d348a6d8cc"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff;"&gt;package&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;com.papaya.action;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;class&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;HelloAction&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;private&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;String&amp;nbsp;message;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;String&amp;nbsp;execute()&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;message&lt;/span&gt;&lt;span style="color: #000000;"&gt;=&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;hello&amp;nbsp;world&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;success&lt;/span&gt;&lt;span style="color: #000000;"&gt;"&lt;/span&gt;&lt;span style="color: #000000;"&gt;;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;public&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;String&amp;nbsp;getMessage()&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;return&lt;/span&gt;&lt;span style="color: #000000;"&gt;&amp;nbsp;message;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;4、Action名称的搜索顺序&lt;/p&gt;&lt;p&gt;在请求Action路径http://localhost:8080/Struts2-1/test/13/hjkhj/hello的时候，struts首先会在&amp;nbsp;test/13/hjkhj命名空间当中寻找hello这个action,如果没有找到，他会继续到test/13/hjkhj命名空间的上层空间/test/13寻找，如果还是没有找到该namespace他还会继续往上层寻找。直到默认命名空间namespace=""为止。&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/1767924.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767924.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/06/29/1767909.html</id><title type="text">MVC框架Struts2学习笔记（一）：Struts2简介及环境搭建</title><summary type="text">Struts2是在webWork2的基础上发展而来的，和Struts1有很大的不同。相比Struts1他有以下的优点：1、 Struts2相比Struts1与ServletAPI和Struts API有了底的解耦。他采用无浸入设计。2、Struts2拦截器功能（来自webWork）3、 提供了类型转换4、提供多种表现技术。包括jsp,freeMarker,velocity5、提供对指定方法进行校验...</summary><published>2010-06-29T14:03:00Z</published><updated>2010-06-29T14:03:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767909.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767909.html"/><content type="html">&lt;p&gt;Struts2是在webWork2的基础上发展而来的，和Struts1有很大的不同。相比Struts1他有以下的优点：&lt;/p&gt;&lt;p&gt;1、 Struts2相比Struts1与ServletAPI和Struts API有了底的解耦。他采用无浸入设计。&lt;br /&gt;&lt;/p&gt;&lt;p&gt;2、Struts2拦截器功能（来自webWork）&lt;/p&gt;&lt;p&gt;3、 提供了类型转换&lt;br /&gt;&lt;/p&gt;&lt;p&gt;4、提供多种表现技术。包括jsp,freeMarker,velocity&lt;/p&gt;&lt;p&gt;5、提供对指定方法进行校验&lt;/p&gt;&lt;p&gt;6、国际化资源管理 &lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;strong style="color: #800000;"&gt;搭建环境：&lt;/strong&gt;&lt;/p&gt;&lt;p&gt;1、Struts2最少依赖的包&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;commons-fileupload-1.2.1.jar、commons-logging-1.0.4.jar、freemarker-2.3.15.jar、ognl-2.7.3.jar、struts2-core-2.1.8.jar、xwork-core-2.1.6.jar&lt;/p&gt;&lt;p&gt;2、在src目录下创建文件struts.xml&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color: #ff00ff;"&gt;xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;?&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff;"&gt;DOCTYPE&amp;nbsp;struts&amp;nbsp;PUBLIC&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"-//Apache&amp;nbsp;Software&amp;nbsp;Foundation//DTD&amp;nbsp;Struts&amp;nbsp;Configuration&amp;nbsp;2.0//EN"&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;"http://struts.apache.org/dtds/struts-2.0.dtd"&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;struts&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;struts&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;3、在web.xml中加入Struts2的启动配置&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;"&gt;&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts2&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-class&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-class&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-mapping&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;Struts2&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-name&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000;"&gt;url-pattern&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;/*&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;url-pattern&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000;"&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000;"&gt;filter-mapping&lt;/span&gt;&lt;span style="color: #0000ff;"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;p&gt;&lt;span style="color: #ff0000;"&gt;注意：在&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;Struts2.1.3以后&lt;/span&gt;&lt;span style="color: #ff0000;"&gt;FilterDispatcher已经过时。&lt;/span&gt;在&lt;span style="color: #000000;"&gt;StrutsPrepareAndExecuteFilter&lt;/span&gt;的init()方法中自动读取配置文件Struts.xml。Struts2在读取Struts.xml文件的内容以后，将会以javaBean的形式在内存中呈现。以后对于对Struts的请求将不会再去读取Struts.xml.&lt;br /&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;p&gt;&lt;/p&gt;&lt;img src="http://www.cnblogs.com/daidu/aggbug/1767909.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/06/29/1767909.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/06/04/1751497.html</id><title type="text">【D5教程】RED5 在 Eclipse 中配置</title><summary type="text">RED5的中文资料少的可怜,从下载到完全调试成功，大概花费了1天多的时间。在这个把中间出现的问题罗列出来，希望给想研究RED5的朋友一点帮助。需要用到的软件：RED5 0.6 RC2 : http://osflash.org/red5Eclipse 3.2 : http://www.eclipse.org/ant: http://ant.apache.org/JDK: http://java.su...</summary><published>2010-06-04T07:38:00Z</published><updated>2010-06-04T07:38:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/06/04/1751497.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/06/04/1751497.html"/><content type="html">RED5的中文资料少的可怜,从下载到完全调试成功，大概花费了1天多的时间。在这个把中间出现的问题罗列出来，希望给想研究RED5的朋友一点帮助。&lt;br /&gt;&lt;br /&gt;需要用到的软件：&lt;br /&gt;RED5 0.6 RC2 : &lt;a href="http://osflash.org/red5" target="_blank"&gt;http://osflash.org/red5&lt;/a&gt;&lt;br /&gt;Eclipse 3.2 : &lt;a href="http://www.eclipse.org/" target="_blank"&gt;http://www.eclipse.org/&lt;/a&gt;&lt;br /&gt;ant: &lt;a href="http://ant.apache.org/" target="_blank"&gt;http://ant.apache.org/&lt;/a&gt;&lt;br /&gt;JDK: &lt;a href="http://java.sun.com/javase/downloads/index.jsp" target="_blank"&gt;http://java.sun.com/javase/downloads/index.jsp&lt;/a&gt;&lt;br /&gt;如果想直接通过SVN获得最新的RED5，还需要安装Eclipse的SVN插件：&lt;a href="http://subclipse.tigris.org/" target="_blank"&gt;http://subclipse.tigris.org/&lt;/a&gt;&lt;br /&gt;呵 呵，装的东西够多吧？简单说一下各个软件的用途。如果是直接从SVN下载获得RED5，那么这里是不具备WIN下运行的文件的，所以就需要ant server来编译运行。下载安装包的朋友就不需要再用ANT来编译了（不过做开发的话，建议还是拖下来比较好，又不大，10几M而已）。Eclipse 是开发RED5服务器端的必须工具，JDK是RED5运行的必要环境。&lt;br /&gt;这里，我以SVN下载版为例来介绍配置。&lt;br /&gt;首先在Eclipse中用SVN插件（右上角有一个小加号的图标-&amp;gt;other-&amp;gt;SVN xxx）从RED5官方网站获得最新的代码（我下了至少两个小时，美国到中国好远啊。。。）SVN地址在RED5的官方网站，我下载的时候为&lt;a href="http://svn1.cvsdude.com/osflash/red5/java/server/trunk" target="_blank"&gt;http://svn1.cvsdude.com/osflash/red5/java/server/trunk&lt;/a&gt;，连接上以后，在最上面的那一级点右键，选择check out，然后选择目标路径什么的就不再多说了。。&lt;br /&gt;下 载完成后，需要为Eclipse指定RED5的Build文件，在左边的列表顶端文件上点右键，然后选择External tools(工具栏绿色的PLAY图标，有红色锁的那个。。)，打开后选左侧择蚂蚁图标（ANT），右键-&amp;gt;Creat,输入文件名 server_all,然后点第一行的浏览按钮，在弹出的窗口中选择build.xml，确定。然后选择target标签，在下面的选择中把all勾选， 并选中该行，然后Apply.再操作一次，新建server_server,同样选择build.xml，然后在target中把all的勾选取消，选择 server，同样选中该行，点Apply.&lt;br /&gt;这个时候运行server_all，我在这里出现了错误（详细见上一篇日志），解决办法为修改build.properti中的JAVA版本号与本机实际JDK版本号一致。另外也有人说报其他错误，要修改BUILD.XML，但我没有遇到这个问题（参见&lt;a href="http://hi.baidu.com/flash_zb/blog/item/412384230961d444ac34ded5.html" target="_blank"&gt;http://hi.baidu.com/flash_zb/blog/item/412384230961d444ac34ded5.html&lt;/a&gt;）。&lt;br /&gt;当你看到BUILD SUCCESS的时候，恭喜你，编译成功咯。&lt;br /&gt;OK， 接下来可以建立第一个应用程序了，为了省事，可以去RED5的webapps里面，把test直接复制一份，改名为demo，然后把里面除了WEB- INF以外的其他文件删除，再进WEB-INF中，把src和class两个文件夹清空，在把除了这两个文件夹以外的其他文件夹删除（如果有的话），现在 终于清净了，在Eclipse中把工作区设置在RED5的webapps，然后新建一个项目，命名为demo，这个时候你会发现刚才弄好的文件夹demo 中的内容已经显示在左边了：）右键选择src,Build Path-&amp;gt;Use as Source Folder，将其指定为代码文件夹，然后在项目名demo上右键选择Properties，选择Java Bulid Path,在选择Source标签，在下面的Browse中选择Class目录，将其指定为目标目录。删除左边自动生成的BIN目录，OK！&lt;br /&gt;为 了编译RED5程序，我们要把RED5的包导入到现在的项目中来。在项目名上点右键选择Properties，然后在Java Build Path中选择Libraries，点击Add External JERS将RED5中的red5.jar包含入项目。然后，就可以按照RED5自带的指导文件建立第一个RED5程序啦 &lt;img src="http://www.cnblogs.com/daidu/aggbug/1751497.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/06/04/1751497.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/05/24/1742849.html</id><title type="text">AS3----Spring 框架学习笔记（二）----xml智能提示DTD文件</title><summary type="text">代码Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--&amp;gt;&amp;lt;?xmlversion="1.0"encoding="UTF-8"?&amp;gt;&amp;lt;!--GeneratedfromCommon.xmlbyXMLBuddy--&amp;gt;&amp;lt;!ELEMENT...</summary><published>2010-05-24T08:19:00Z</published><updated>2010-05-24T08:19:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742849.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742849.html"/><content type="html">&lt;div style="background-color: #F5F5F5;border: 1px solid #CCCCCC;padding-left:5px;padding-right:5px;" onclick="cnblogs_code_show('9096be1e-29b2-43cf-a0e4-c7356ca048c0')"&gt;&lt;img  id="code_img_opened_9096be1e-29b2-43cf-a0e4-c7356ca048c0" onclick="cnblogs_code_hide('9096be1e-29b2-43cf-a0e4-c7356ca048c0',event)" src="http://images.cnblogs.com/OutliningIndicators/ExpandedBlockStart.gif"&gt;&#xD;
&lt;div id="cnblogs_code_open_9096be1e-29b2-43cf-a0e4-c7356ca048c0"&gt;&#xD;
&lt;div&gt;&lt;!--&lt;br/ /&gt;&lt;br/ /&gt;Code highlighting produced by Actipro CodeHighlighter (freeware)&lt;br/ /&gt;http://www.CodeHighlighter.com/&lt;br/ /&gt;&lt;br/ /&gt;--&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;xml&amp;nbsp;version="1.0"&amp;nbsp;encoding="UTF-8"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;?&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;lt;!--&lt;/span&gt;&lt;span style="color: #008000"&gt;&amp;nbsp;Generated&amp;nbsp;from&amp;nbsp;Common.xml&amp;nbsp;by&amp;nbsp;XMLBuddy&amp;nbsp;&lt;/span&gt;&lt;span style="color: #008000"&gt;--&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;array&amp;nbsp;(value+)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;array-collection&amp;nbsp;(value+)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;constructor-arg&amp;nbsp;(ref?)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;constructor-arg&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;type&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;dictionary&amp;nbsp;(entry)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;entry&amp;nbsp;(key,value)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;import&amp;nbsp;EMPTY&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;import&amp;nbsp;file&amp;nbsp;NMTOKEN&amp;nbsp;#REQUIRED&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;key&amp;nbsp;(#PCDATA)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;object&amp;nbsp;(constructor-arg|import|object|param|property|template)*&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;object&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;class&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;factory-method&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;id&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;init-method&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;lazy-init&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;singleton&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;template&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;objects&amp;nbsp;(array|array-collection|dictionary|object)*&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;param&amp;nbsp;EMPTY&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;param&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;name&amp;nbsp;NMTOKEN&amp;nbsp;#REQUIRED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value&amp;nbsp;NMTOKEN&amp;nbsp;#REQUIRED&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;property&amp;nbsp;(object?)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;property&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;file&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;name&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ref&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;value&amp;nbsp;CDATA&amp;nbsp;#IMPLIED&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;ref&amp;nbsp;(#PCDATA)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;ref&amp;nbsp;object&amp;nbsp;NMTOKEN&amp;nbsp;#IMPLIED&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;template&amp;nbsp;(object)&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ATTLIST&amp;nbsp;template&amp;nbsp;id&amp;nbsp;NMTOKEN&amp;nbsp;#REQUIRED&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;!&lt;/span&gt;&lt;span style="color: #ff00ff"&gt;ELEMENT&amp;nbsp;value&amp;nbsp;(#PCDATA|ref)*&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/div&gt;&lt;/div&gt;&lt;/div&gt;&#xD;
&lt;p&gt;配置对xml文件编辑时候的只能提示&lt;/p&gt; &lt;img src="http://www.cnblogs.com/daidu/aggbug/1742849.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742849.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry><entry><id>http://www.cnblogs.com/daidu/archive/2010/05/24/1742842.html</id><title type="text">AS3----Spring 框架学习笔记（一）----xml标签解析</title><summary type="text">xml配置文件的标签：下表是在配置文件中常用的一些标签以及相关的说明和用法术语说明代码示例${变量名}你可以把一些变量分离出来写在单独的文本文件中，然后在配置中引用这些变量，这样最大的好处是你可以把配置信息比如Server端的连接地址放在单独的文件中，方便修改和维护新建global.prop文本文件，写入：variable1=10在配置中引用：${variable1}object在XML配置中，每...</summary><published>2010-05-24T08:15:00Z</published><updated>2010-05-24T08:15:00Z</updated><author><name>木瓜网络</name><uri>http://www.cnblogs.com/daidu/</uri></author><link rel="alternate" href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742842.html"/><link rel="alternate" type="text/html" href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742842.html"/><content type="html">&lt;p&gt;xml配置文件的标签：&lt;/p&gt;&#xD;
&lt;p&gt;&lt;/p&gt;&#xD;
&lt;p&gt;下表是在配置文件中常用的一些标签以及相关的说明和用法&lt;/p&gt;&#xD;
&lt;p&gt;&lt;table width="100%" border="1"&gt;&#xD;
&lt;tbody&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="col"&gt;术语&lt;/th&gt;&#xD;
&lt;th scope="col"&gt;说明&lt;/th&gt;&#xD;
&lt;th scope="col"&gt;代码示例&lt;/th&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;${变量名}&lt;/th&gt;&#xD;
&lt;td&gt;你可以把一些变量分离出来写在单独的文本文件中，然后在配置中引用这些变量，这样最大的好处是你可以把配置信息比如Server端的连接地址放在单独的文件中，方便修改和维护&lt;/td&gt;&#xD;
&lt;td&gt;&#xD;
&lt;p&gt;新建global.prop文本文件，写入：&lt;/p&gt;&#xD;
&lt;p&gt;variable1=10&lt;/p&gt;&#xD;
&lt;p&gt;在配置中引用：&lt;/p&gt;&#xD;
&lt;p&gt;${variable1}&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;object&lt;/th&gt;&#xD;
&lt;td&gt;在XML配置中，每一个对象用Object来表示，然后分别用id和class代表唯一标示和类的名称&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object id="obj"  /&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;property&lt;/th&gt;&#xD;
&lt;td&gt;你可以使用property为对象的属性复制，这也是IoC的精髓，即从这里把依赖注入到对象。name就是属性的名称，而value就是你要赋予的具体的值&lt;/td&gt;&#xD;
&lt;td&gt;&#xD;
&lt;p&gt;&amp;lt;object ... &amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;property name="name" value="Fiona Apple"/&amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;/object&amp;gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;ref&lt;/th&gt;&#xD;
&lt;td&gt;除了可以直接赋值，你也可以通过使用ref在属性中引用别的对象&lt;/td&gt;&#xD;
&lt;td&gt;&#xD;
&lt;p&gt;&amp;lt;object id="a" .../&amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;object ... &amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;property name="name" ref="a"/&amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;/object&amp;gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;constructor-arg&lt;/th&gt;&#xD;
&lt;td&gt;如果你的对象实例化的时候需要从构造函数中传入参数，那么可以使用这个属性，将所需的参数传递进去&lt;/td&gt;&#xD;
&lt;td&gt;&#xD;
&lt;p&gt;&amp;lt;object ... &amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;constructor-arg&amp;gt;&lt;br /&gt;&amp;lt;ref&amp;gt;anotherExampleObject&amp;lt;/ref&amp;gt;&lt;br /&gt;&amp;lt;/constructor-arg&amp;gt;&lt;br /&gt;&amp;lt;constructor-arg type="int" value="1"/&amp;gt;&lt;/p&gt;&#xD;
&lt;p&gt;&amp;lt;/object&amp;gt;&lt;/p&gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;factory-method&lt;/th&gt;&#xD;
&lt;td&gt;工厂方法，含义是不使用new对这个Object进行实例化，而是调用这个类的静态方法，可用于单例模式的实现&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object id="a"  factory-method="getInstance" /&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;dictionary&lt;/th&gt;&#xD;
&lt;td&gt;相当于AS3中的Dictionary，你可以在配置中声明一个Dictionary对象&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;dictionary&amp;gt;&lt;br /&gt;&amp;lt;entry&amp;gt;&lt;br /&gt;&amp;lt;key&amp;gt;development&amp;lt;/key&amp;gt;&lt;br /&gt;&amp;lt;value&amp;gt;dx&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;lt;/entry&amp;gt;&lt;br /&gt;&amp;lt;/dictionary&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;array&lt;/th&gt;&#xD;
&lt;td&gt;同样，你可以在配置中声明一个数组对象&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;array&amp;gt;&lt;br /&gt;&amp;lt;value&amp;gt;ssnce&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;lt;value&amp;gt;&amp;lt;ref object="s"/&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;lt;/array&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;array-collection&lt;/th&gt;&#xD;
&lt;td&gt;对应Flex中的ArrayCollection，当然只有Flex的应用才可以使用这个配置方式&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;array-collection&amp;gt;&lt;br /&gt;&amp;lt;value&amp;gt;ssnce&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;lt;value&amp;gt;&amp;lt;ref object="s"/&amp;gt;&amp;lt;/value&amp;gt;&lt;br /&gt;&amp;lt;/array-collection&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;depends-on&lt;/th&gt;&#xD;
&lt;td&gt;定义依赖关系，含义就是先初始化它的依赖，然后初始化自己&lt;/td&gt;&#xD;
&lt;td&gt;depends-on="manager,accountDao"&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;lazy-init&lt;/th&gt;&#xD;
&lt;td&gt;如果值为true，则不马上初始化，而是在第一次调用的时候才初始化&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object ... lazy-init="true"/&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;autowire&lt;/th&gt;&#xD;
&lt;td&gt;&#xD;
&lt;p&gt;自动装配，Spring ActionScript支持自动装配，含义就是你只要声明某个对象为自动装配，它就会按照规则自动去寻找这个对象的依赖并注入给它，而不需要手工操作。&lt;/p&gt;&#xD;
&lt;p&gt;默认是no，可以选择byName,byType,constructor,autodetect来自动装配对象的依赖。使用自动装配时，应当权衡利弊，合理的与ref的方法相结合，尽量在降低工作量的同时，保证应用的可维护度&lt;/p&gt;&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object ... autowiret="byName"/&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;singleton&lt;/th&gt;&#xD;
&lt;td&gt;一个布尔量，对一个对象而言，这个属性的设置为True则只创建一个实例，false则每次调用都创建新的实例&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object ... singleton="true"/&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;init-method&lt;/th&gt;&#xD;
&lt;td&gt;初始化方法，含义是创建实例后，调用实例的这个方法进行初始化&lt;/td&gt;&#xD;
&lt;td&gt;init-method="init"&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;method-invocation&lt;/th&gt;&#xD;
&lt;td&gt;调用对象的方法&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;method-invocation name="init"/&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;abstract&lt;/th&gt;&#xD;
&lt;td&gt;定义继承关系，你可以将一个对象的abstract属性设置为true，然后在另一个对象中定义parent=这个对象，含义就是继承原对象的所有的属性&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;object id="inheritedTestObject" abstract="true"&amp;gt;&lt;br /&gt;&amp;lt;property name="name" value="parent"/&amp;gt;&lt;br /&gt;&amp;lt;property name="age" value="1"/&amp;gt;&lt;br /&gt;&amp;lt;/object&amp;gt;&lt;br /&gt;&amp;lt;object id="inheritsWithDifferentClass"&lt;br /&gt;class="org.springactionscript.objects.DerivedTestObject"&lt;br /&gt;parent="inheritedTestObject" init-method="initialize"&amp;gt;&lt;br /&gt;&amp;lt;property name="name" value="override"/&amp;gt;&lt;br /&gt;&amp;lt;!-- the age property value of 1 will be inherited from parent --&amp;gt;&lt;br /&gt;&amp;lt;/object&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;template&lt;/th&gt;&#xD;
&lt;td&gt;你可以将重复性的设置工作定义为模板，然后其它对象就可以使用这个模板&lt;/td&gt;&#xD;
&lt;td&gt;&amp;lt;template id="remoteObject"&amp;gt;&lt;br /&gt;&amp;lt;object &amp;gt;&lt;br /&gt;&amp;lt;property name="makeObjectsBindable" value="${makeBindable}"/&amp;gt;&lt;br /&gt;&amp;lt;/object&amp;gt;&lt;br /&gt;&amp;lt;/template&amp;gt;&lt;br /&gt;&amp;lt;object id="concreteService" template="remoteObject"&amp;gt;&lt;br /&gt;&amp;lt;param name="makeBindable" value="false"/&amp;gt;&lt;br /&gt;&amp;lt;/object&amp;gt;&lt;/td&gt;&lt;/tr&gt;&#xD;
&lt;tr&gt;&#xD;
&lt;th scope="row"&gt;application&lt;/th&gt;&#xD;
&lt;td&gt;Flex专属属性，你可以通过配置下面这个对象：&amp;lt;object /&amp;gt;，然后就可以在其他的配置中使用application这个变量，使用方式是：${application.url}&lt;/td&gt;&#xD;
&lt;td&gt;&#xD;
&lt;ul&gt;&lt;li&gt;application.frameRate&lt;/li&gt;&lt;li&gt;application.historyManagementEnabled&lt;/li&gt;&lt;li&gt;application.pageTitle&lt;/li&gt;&lt;li&gt;application.resetHistory&lt;/li&gt;&lt;li&gt;application.scriptRecursionLimit&lt;/li&gt;&lt;li&gt;application.scriptTimeLimit&lt;/li&gt;&lt;li&gt;application.url&lt;/li&gt;&lt;li&gt;application.url.protocol&lt;/li&gt;&lt;li&gt;application.url.host&lt;/li&gt;&lt;li&gt;application.url.port&lt;/li&gt;&lt;li&gt;application.usePreloader&lt;/li&gt;&lt;li&gt;application.viewSourceURL &lt;/li&gt;&lt;/ul&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/p&gt; &lt;img src="http://www.cnblogs.com/daidu/aggbug/1742842.html?type=1" width="1" height="1" alt=""/&gt;&lt;p&gt;&lt;a href="http://www.cnblogs.com/daidu/archive/2010/05/24/1742842.html" target="_blank"&gt;本文链接&lt;/a&gt;&lt;/p&gt;</content></entry></feed>
