eclipse环境下基于tomcat-7.0.82构建struts2项目

时间:2023-12-13 19:13:56

开山第一篇,毕业4个月目前接触最多的框架还是s2sh框架。。。。

具备完整的开发环境下,在eclipse下启动tomcat出现如下所示画面表示环境构建成功。

eclipse环境下基于tomcat-7.0.82构建struts2项目

第一步:创建web项目,截图如下

eclipse环境下基于tomcat-7.0.82构建struts2项目

此页面只需填写项目名称即可,连续点击两次Next后出现如下所示页面

eclipse环境下基于tomcat-7.0.82构建struts2项目

红色标记位置一定要勾选,这是web项目启动时首先需要加载的web.xml配置文件,勾选后点击Finish即成功创建了一个空白web项目。

第二步:导入struts2所需jar包,各版本jar包下载地址:http://mirrors.shuosc.org/apache/struts/,本次我用到的是struts2-2.3.2。jar包导入位置如图所示。

eclipse环境下基于tomcat-7.0.82构建struts2项目

第三步:web.xml中配置struts2的过滤器,配置后的代码如下所示。

<?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" id="WebApp_ID" version="3.0">
<display-name>struts2Demo</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>/*</url-pattern>
</filter-mapping> <!-- <welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list> -->
</web-app>

第四步:创建struts.xml配置文件。此配置文件在src根目录下,与包处于同一级。如下图所示。

eclipse环境下基于tomcat-7.0.82构建struts2项目

配置文件中的内容如下所示。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"><!-- 这里要和struts2版本号统一 --> <struts> </struts>

注意注释部分。到这里一个空的struts2项目已经准备完毕。接下来我们测试项目是否构建成功。

第五步:创建action测试类,代码如下。

package wjt.com.test.action;

import com.opensymphony.xwork2.ActionSupport;

public class TestAction extends ActionSupport{

    public String execute() throws Exception {
System.out.println("struts==========================");
return "success";
} }

action类继承ActionSupport并重写execute()方法。这里的action我们可以简单理解为MVC模式下的控制器。

第六步:在struts.xml文件中配置过滤器转发的顶下页面,代码如下。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"><!-- 这里要和struts2版本号统一 --> <struts>
<package name="default" extends="struts-default">
<action name="login" class="wjt.com.test.action.TestAction">
<result name="success">index.jsp</result>
</action>
</package> </struts>

这里package标记中name属性用作定义一个包名以区分其他人代码,extends属性用于继承一个父包,extends="struts-default"这句话是必须要有的,struts2项目启动会加载默认的此配置文件,我们在自定义之后必须有此操作才能使自定义代码生效;

action标记中的name属性是用作客户端访问时的路径相当于Servlet's path;action标记中的class属性则是用作与这个action所对应的aciton类的全路径;

action标记中的method属性时与action类的方法所对应不写默认为execute方法;

action标记内result中的name属性为其父标记所对应方法的返回值,实现从逻辑视图名到物理视图名的转化(逻辑视图=success,物理视图=index.jsp),不写默认为success;
若返回值与name属性值匹配则完成result标记内指定的路径进行跳转(本例就跳转到我们事先编写好的一个index.jsp页面)。

第七步:在webContent目录下创建一个名称为index的jsp文件,文件位置如下所示

eclipse环境下基于tomcat-7.0.82构建struts2项目

并在<body></body>体内随意写一句话用于展示,代码如下。

<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Insert title here</title>
</head>
<body> 这是Mr至简的第一个struts2项目! </body>
</html>

第八步:将struts2项目发布在tomcat下并启动无任何异常抛出后,在浏览器地址栏输入:http://localhost:8080/struts2Demo/login 进行请求,结果如下图所示。

eclipse环境下基于tomcat-7.0.82构建struts2项目

到这里一个简单的struts2项目构建完毕,关于struts2的项目相对来说简单,建议大家在熟悉原理的情况下在自行构建项目进一步理解框架。不足的地方还请指教。

本文参考清华大学出版社--《Struts2+Spring3+Hibernate框架技术精讲与整合案例》第四章Struts2概述。