《struts2》框架第一个实例的搭建

struts2框架第一个实例的搭建

很久以前在学习了Java SE之后,就想来了解下JAVA的三大框架:struts2、Spring和hibernate,简称就是SSH。最近刚好有时间,就可以来学习了解下了,本来是打算用笔和纸质的笔记本来做笔记的,但是,发现写的速度比较慢,并且有的还需要截图进行说明,因此,还是在博客上面写学习笔记吧。因此,就有了关于struts2的第一篇博文。

开发环境

1、MyEclipse

2、struts2

3、Apache tomcat 7.0

下面开始我们的第一个程序HelloWorld的搭建工作。

创建第一个web项目

步骤如下:

1、右键—–>new——>web project,在出现的如下界面填写相关信息即可。

《struts2》框架第一个实例的搭建_第1张图片

2、载入struts包,步骤如下:

右键项目名—->myeclipce——->Project Facets[Capabilities]——>Install Apache Struts(2.x) Fact.

这样就在项目中引入好了struts2相关的库文件.

此时,项目目录如下:

《struts2》框架第一个实例的搭建_第2张图片

3、web.xml文件中的内容

web.xml文件中的主要是一些过滤器。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
  <display-name>HelloWorld</display-name>
  <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>*.action</url-pattern>
  </filter-mapping>
</web-app>

4、建立一个Action

例如:下面就是建立一个HelloWorldAction的简单例子,此Action必须继承ActionSupport类,并重写execute方法。

package com.struts.test;

    import com.opensymphony.xwork2.ActionSupport;


    public class HelloWorldAction extends ActionSupport {

    @Override
    public String execute() throws Exception {
        System.out.println("Action 执行");
        return SUCCESS;
    }

}

5、修改struts.xml文件

即指定Action和result文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>

    <package name="default" namespace="/" extends="struts-default" >
        <!-- 指定action -->
        <action name="helloworld" class="com.struts.test.HelloWorldAction">
            <!-- 指定结果集 -->
            <result>/result.jsp</result>

        </action>

    </package>

</struts>    

这里要一个值得注意的地方就是:当我们指定package中的namespace=”/”,则我们在浏览器中访问此action的路径如下:http://localhost:8080/HelloWorldAction/helloworld.(其中,HelloWorldAction为Action的类名,而helloworld为标签action中name属性的内容)。

而如果指定package中的namespace=”/test”,则我们在浏览器中访问此action的路径如下:http://localhost:8080/HelloWorldAction/test/helloworld.即要将test加入到路径中去。

6、result.jsp文件

在WebRoot文件夹下,新建一个JSP模板文件,由于我们只是想看下简单的运行过程,因此只需要在模板文件中的 标签下 写入

this  is result.jsp  page.

内容即可。

当以上工作均准备完成之后,我们就可以运行这个web项目了。最后是成功了的,如下:

但是在运行过程中,遇到了很多问题,问题见下篇博文。

这样,第一个HelloWorld就运行起来了,或许到目前为止你还不知道上面的工作原理,在接下来的几篇博文中将会进行分析。

小结

关于折腾第一个基于struts2框架的HelloWorld,把我都给折腾奔溃了,出现各种问题,主要原因是自己对这种web项目出现的错误信息还不怎么懂,不像普通的Java、C、C++那样的小程序,可以单步跟踪呀,而且报错的行号就是我们自己写的文件的行号呀。哎,反正不好搞呀。

尽管如此,借用三毛的一句话:既然选择了远方,便只顾风雨兼程。

特别说明

刚好在慕课网上看到有《struts2入门》视频可以学习,就更加促进了我学习struts2框架的学习。因此,关于struts2的系列博文均有参考这个视频资料。在接下来的博文参考资料中就不再写上参考慕课网上的《struts2入门》的的说明

你可能感兴趣的:(框架,struts)