逍遥一派 发表于 2015-1-18 10:59:41

了解下JAVA的struts 2在web.xml中设置概况

大型的应用一般不会用这些框架(因为性能考虑);开发人员根据需要选择用一些框架,也可以不选用框架;不用框架并不代表要自己写框架;修改框架的可能性更小。
web.xml是web使用中加载有关servlet信息的主要设置文件,起着初始化servlet,filter等web程序的感化。
一般,一切的MVC框架都必要Web使用加载一个中心把持器,那接纳甚么办法加载如许的中心把持器呢,servlet或filter成了很好的选择,
由于它们会跟着web服务的启用而主动的载进。关于Struts2框架而言,必要加载FilterDispatcher,
只需Web使用卖力加载FilterDispatcher,FilterDispatcher将会加载使用的Struts2框架。
由于Struts2将中心把持器计划成Filter,而不是一个一般Servlet。故为了让Web使用加载FilterDispacher,只必要在web.xml文件中设置FilterDispatcher便可。
在web.xml内里设置struts。假如是2.1.3之前的版本,用org.apache.struts2.dispatcher.FilterDispatcher,
今后的版本则设置org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter。

<!--设置Struts2框架的中心Filter-->
<filter>
<!--设置Struts2中心Filter的名字-->
<filter-name>struts2</filter-name>
<!--设置Struts2中心Filter的完成类-->
<!--更多出色内容:http://www.bianceng.cn/Programming/Java/-->
<filter-class>org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>

<init-param>
<param-name>config</param-name>
<param-value>struts-default.xml,struts-plugin.xml,/WEB-INF/struts.xml</param-value>
</init-param>

<init-param>
<!--设置Struts2框架默许加载的Action包布局-->
<param-name>actionPackages</param-name>
<param-value>org.apache.struts2.showcase.person</param-value>
</init-param>

<!--设置Struts2框架的设置供应者类-->
<init-param>
<param-name>configProviders</param-name>
<param-value>lee.MyConfigurationProvider</param-value>
</init-param>

<!--设置Struts2框架的常量-->
<init-param>
<param-name>truts.enable.DynamicMethodInvocation</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>struts.devMode</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>struts.objectFactory</param-name>
<param-value>spring</param-value>
</init-param>

</filter>
<!--设置Filter拦阻的URL-->
<filter-mapping>
<!--设置Struts2的中心FilterDispatcher拦阻一切用户哀求-->
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>个中有3个初始化参数有特别意义:
config:该参数的值是一个以英文逗号(,)离隔的字符串,每一个字符串都是一个XML设置文件的地位。Struts2框架将主动加载该属性指定的系列设置文件。假如没有指定该属性则默许利用以下三个设置文件struts-default.xml,struts-plugin.xml,struts.xml
actionPackages:该参数的值也是一个以英文逗号(,)离隔的字符串,每一个字符串都是一个包空间,Struts2框架将扫描这些包空间下的Action类。
configProviders:假如用户必要完成本人的ConfigurationProvider类,用户能够供应一个或多个完成了ConfigurationProvider接口的类,
然后将这些类的类名设置成该属性的值,多个类名之间以英文逗号(,)离隔。
除此以外,还可在此处设置Struts2常量,每一个<init-param>元素设置一个Struts2常量,个中<param-name>子元素指定了常量name,
而<param-value>子元素指定了常量value。
至于filter-mapping属性是过滤器(Filter)必需的一个属性,用于过滤哀求的路径,此处一样平常就设为/*情势,
对一切哀求uri举行拦阻(过滤),除非你要做一些特别的处置。
到此,设置完struts2的中心把持器后,基础完成了struts2在web.xml文件中的设置。
注重点:假如web容器是J2EE1.3(servlet2.3),因为不会主动加载struts的标签库,以是必要在web.xml文件中手动加载struts的标签库,
文件名struts-tags.tld,一样平常放在WEB-INF上面,能够本人指定但假如web容器是J2EE1.4(servlet2.4),那末web容器会主动加载标签库,
Struts2的标签库界说文件包括在struts2-core-2.0.6.jar文件里,在struts2-core-2.0.6.jar文件的META-INF路径下,包括了一个struts-tag.tld文件,
这个文件就是Struts2的标签库界说文件,Servlet2.4标准会主动加载该标签库文件,个中struts-tags.tld文件里包括了加载信息的片段:以下:

<taglib>
<!--界说标签库的版本-->
<tlib-version>2.2.3</tlib-version>
<!--界说标签库所需的JSP版-->
<jsp-version>1.2</jsp-version>
<short-name>s</short-name>
<!--界说Struts2标签库的URI,jsp文件中使用的uri-->
<uri>/struts-tags</uri>...
</taglib>
而servlet2.3手动设置以下:
<!--手动设置Struts2的标签库-->
<taglib>
<!--设置Struts2标签库的URIjsp文件中使用的uri,相似于名字空间-->
<taglib-uri>/s</taglib-uri>
<!--指定Struts2标签库界说文件的物理地位-->
<taglib-location>/WEB-INF/struts-tags.tld</taglib-location>
</taglib>
用winrar打包j2ee的程序和用IDE打包应用程序是一样的。按照你的想法,你是不是也希望服务器都整合由一家公司提供呢?

精灵巫婆 发表于 2015-1-20 12:30:20

是一种将安全性(Security)列为第一优先考虑的语言

透明 发表于 2015-1-28 09:59:47

在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。

小妖女 发表于 2015-2-12 01:00:24

是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

爱飞 发表于 2015-3-2 20:50:05

是一种将安全性(Security)列为第一优先考虑的语言

飘飘悠悠 发表于 2015-3-11 06:15:30

Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。

冷月葬花魂 发表于 2015-3-17 22:09:26

J2SE开发桌面应用软件比起 VC,VB,DEPHI这些传统开发语言来说,优势好象并不明显。J2ME对于初学者来说,好象又有点深奥,而且一般开发者很难有开发环境。

海妖 发表于 2015-3-17 22:09:26

有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)

小女巫 发表于 2015-3-25 03:31:49

接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
页: [1]
查看完整版本: 了解下JAVA的struts 2在web.xml中设置概况