struct2搭配及简单login程序

来源:互联网 发布:mac os虚拟机镜像下载 编辑:程序博客网 时间:2024/05/08 22:02
 

 struct2的搭建,下载好struct2,解压之后发现N多架包,一时眼花缭乱,只能学网上的办法,到APP目录里解压一个例子程序来使用,其实发现核心架包就这么几个 asm-3.3.jar,asm-commons-3.3.jar, asm-tree-3.3.jar, commons-fileupload-1.2.2.jar,commons-io-2.0.1.jar,commons-lang3-3.1.jar,freemarker-2.3.19.jar, javassist-3.11.0.GA.jar,ognl-3.0.5.jar, struts2-core-2.3.4.1.jar,xwork-core-2.3.4.1.jar。还是和当年导入mysql的驱动架包一样导入到项目中。   之后还是要在例子程序中COPY其中的structs.xml文件。注释掉Ation和package标签之后就不报错了,以后的Action模仿例子程序中的Action来写。修改web.xml文件,加入对struct的支持,代码也是从例子程序中copy的,源码如下

例子程序中的Action如下

<filter>    <filter-name>struts2</filter-name>    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class></filter><filter-mapping>    <filter-name>struts2</filter-name>    <url-pattern>/*</url-pattern></filter-mapping>


 

<struts>    <constant name="struts.enable.DynamicMethodInvocation" value="false" />    <constant name="struts.devMode" value="false" />    <package name="default" namespace="/" extends="struts-default">        <default-action-ref name="index" />        <global-results>            <result name="error">/error.jsp</result>        </global-results>        <global-exception-mappings>            <exception-mapping exception="java.lang.Exception" result="error"/>        </global-exception-mappings>         <!--这里修改了,改了交给一个UserAction的类来处理-->        <action name="index" class="UserAction">       <result type="redirectAction" name="success">                <param name="actionName">HelloWorld</param>                <param name="namespace">/example</param>            </result>        </action>    </package>    <include file="example.xml"/>    <!-- Add packages here --></struts>


程序的运行路径,当网页访问···/index.action时,就会想先前的servlet一样先在web.xml中查找,当找不到这个url时,就会跳到struct.xml中查找,找到index的action标签,然后交给UserAction处理,在如果UerserAction返回的是success的字符串,那么就会进入到result中,然后交给了/example处理。这就完成了一次Action。
   而UserAction要想处理这些信息就必须继承ActionSupport类,这个类在com.opensymphony.xwork2的包中。类中有一个方法是将处理信息反馈回去的public String execute();
  
    第一个Struct总算是搭好了。

 

原创粉丝点击