`
jiang5495
  • 浏览: 88999 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

Struts2讲义1(转载)

阅读更多

使用web.xml配置Struts2实现Web项目Struts2应用
在现在开发的Web项目中,大家都是使用web.xml来实现MVC框架的应用。既然Struts2也属于MVC框架,因此在web.xml中必定要配置Struts2用以实现应用。
技术要点

本节代码说明Struts2基本配置。
 如何加载FilterDispatcher过滤器。
 如何使用FilterDispatcher过滤器拦截URL。


演示代码

Java代码 复制代码
<!---------------------------------------文件名: web.xml-------------------------------->
<?xml version="1.0" encoding="GB2312"?>
<web-app xmlns=http://java.sun.com/xml/ns/j2ee
 xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
 	version="2.4" 
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
	<filter>
		<!--过滤器名字  -->
		<filter-name>struts2</filter-name>
		<!-- 过滤器支持的struts2类  -->
		<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
	</filter>
	
	<filter-mapping>
		<!--过滤器拦截名字  -->
		<filter-name>struts2</filter-name>
		<!--过滤器拦截文件路径名字  -->
		<url-pattern>/*</url-pattern>
	</filter-mapping>
  	<welcome-file-list>
    	<welcome-file>index.jsp</welcome-file>
  	</welcome-file-list>
</web-app>

代码解释
(1)在Struts1中web.xml中对它的加载都是加载一个Servlet,但是在Struts2中,因为设计者为了实现AOP(面向方面编程)概念,因此是用filter来实现的。所以web.xml里加载的都是Struts2的FilterDispatcher类。<filter-name>是定义的过滤器名字,而<class>就是Struts2里那个FilterDispatcher类。
(2)定义好过滤器,还需要在web.xml里指明该过滤器是如何拦截URL的。<url-pattern></url-pattern>中的“/*”是个通配符,它表明该过滤器是拦截所有的HTTP请求。基本上是不会改成其他形式,因为在开发中所有的HTTP请求都可能是一个页面上进行业务逻辑处理的请求。就目前而言,开发人员只需要写成“/*”就可以了。
(3)本节中的示例代码是最基本的web.xml配置Struts2的内容。其实还有<init-param>等设置过滤器初始化参数的配置内容。之所以这里没有具体解释,是因为这些也可以在struts.properties文件内定义

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics