Struts2入门配置

关联Struts2源代码

在Eclipse或者MyEclipse关联Struts2源代码,关联External Folder到以下目录即可

struts-2.1.8-all/struts-2.1.8/src/core/src/main/java

 

添加Struts2的相关jar包

将Struts2框架最基本的五个JAR拷贝到Web应用的lib目录下就OK了
五个JAR包的名字,如下所示:
commons-logging-1.0.4.jar

freemarker-2.3.8.jar
ognl-2.6.11.jar

struts2-core-2.0.11.jar
xwork-2.0.4.jar
 

 

 

Strust2环境配置

首先配置web.xml文件,增加Struts2核心控制器的配置和映射信息
然后添加Struts2的配置文件struts.xml,它应保存在WEB-INF中的classes目录下
所以我们就可以在Eclipse中Web项目的src目录下建立struts.xml文件

 

在web.xm文件中的具体配置如下:

 <filter> <filter-name>struts2</filter-name> <filter-class> org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter </filter-class> <!-- 以上是Strus2.1.8.1用到的FilterClass,以下是Strus2.0.11及以下版本用到的FilterClass --> <!-- <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>

 

在StrutsPrepareAndExecute的init()方法中将会读取类路径下默认的配置文件struts.xml

完成初始化操作。

注:struts2读取到配置文件struts.xml的内容后,以javaBean的形式存放在内存中,以后

struts2对用户的每次请求处理将使用内存中的数据,而不是每次读取struts.xml文件。

 

struts.xml文件的具本配置如下:

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http://struts.apache.org/dtds/struts-2.0.dtd"> <struts> <package name="struts2" extends="struts-default" namespace="/user"> <action name="login" class="com.jadyer.action.LoginAction"> <result name="input">/login.jsp</result> <result name="failer">/login.jsp</result> <result name="success">/result.jsp</result> </action> </package> </struts>

在struts2框架中,使用包来管理Action。包的作用和java中的类包是非常类似的,它主要用于管理业务功能相关的Action。在实际应用中,我们应该把一组业务功能相关的Action放在同一个包下。配置包时,必须指定name属性,该属性值可以任意取名,但必须唯一,他不对应java的类包,如果其他包要继承该包,必须通过该属性进行引用,包的namespace属性用于定义该包的命名空间,命名空间作为访问该包下Action的路径的一部分。如访问上面例子的Action,访问路径为:/user/login.action,  namespace属性可以不配置。

通常每个包都应该继承struts-default包,因为struts2很多核心功能都是拦截器来实现的,如:从请求中把请求参数封装到Action,文件上传和数据验证等都是通过拦截器实现的。struts-default定义了这些拦截器和Result类型,可以这么说,当包继承了struts-default

才能使用struts2的核心功能。struts-default包是在struts-core-2.x.x.jar文件中的struts-default.xml中定义的,这文件也是struts2

默认的配置文件,struts2每次都会自动加载struts-default.xml文件。

      包还可以通过abstract="true",定义为抽象包,抽象包中不能包含action。

 

 

你可能感兴趣的:(eclipse,struts,MyEclipse,jar,action,encoding)