A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

通过最近的学习和对网上资料的参考,Gd发现SSH是Java框架学习中很重要的一部分,学过ORM之后,对Hibernate有了浅层的了解,但是如果要完成一个完整的项目光靠Hibernate是不够的,于是Gd自己琢磨了一下Struts2,现在就把Struts2的入门案例分享给大家,也希望有前辈能够帮忙指出其中的不足。

首先给大家推荐一个慕课网的Struts2入门的视频:点击打开链接,里面对配置方面讲的很简洁,但是从Struts2的下载安装到最后的运行示例都十分全面,细心跟着做,出现错误就认真看错误说明,配置起来还是很简单的。

下面Gd来说说自己的配置过程:

首先就是Struts2的下载和安装:

我是跟着传智播客高教产品研发部出版的《SSH框架整合实战教程》这本书来做的,所以就直接选择了和书上版本相同的sturts-2.3.24-all版本的Struts2来学习(如需下载此版本可以在浏览器的地址栏中直接输入archive.apache.org/dist/struts/2.3.24/struts-2.3.24-all.zip之后回车,浏览器便会弹出下载链接),其他版本可以去Apache官网下载:点击打开链接,官网界面如下图:


Struts2是绿色版免安装的,所以下载完直接解压就可以了,详细下载安装步骤可以参考网上的教程,很全面和详细,Gd在这里就不多嘴了。

要测试运行Web程序,还要下载配置Tomcat,网上的教程也有很多,很全面,很详细,看一看就明白了。

下面就进入正式配置阶段了:

首先强调一下eclipse的版本问题,配置Struts2的eclipse需要支持Web程序,有些版本的eclipse可能需要另外添加插件才可以,Gd的版本是Eclipse Java EE IDE for Web Developers,可以支持Struts2的配置。

1.

在eclipse中新建一个Web项目,打开eclipse,依次单击File-->New-->Dynamic Web Project,新建一个Web项目。


之后直接点下一步,到了下图所示的这一步要注意:


将Generate web.xml deployment description那一行打上勾可以自动生成web.xml配置文件,省去了手打代码的麻烦。

2.

添加Struts2的JAR包:

全部的JAR包在struts-2.3.24-all\struts-2.3.24\lib目录下,这里我们只需要添加此项目所需要的JAR包就可以。

JAR包要添加到项目的WebContent(我的文件夹名跟着视频改成了WebRoot)/WEB-INF/lib目录下:


如果JAB包没有被开发工具自动添加到classpath中,我们还需要选中所有的JAR,点击鼠标右键,进行Build Path-->Add to Build Path 操作。

3.

在WEB-INF目录下新建一个名称为web.xml的文件,配置Struts2的核心过滤器。

[java] view plain copy



  • <?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"   
  •     xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"   
  •     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>HelloStruts</display-name>  
  •     <!-- 配置Struts2的核心过滤器 -->  
  •     <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>  
  • </web-app>  

4.

定义处理用户请求的action类:

[java] view plain copy



  • package com.Gdstruts.action;  
  •   
  • import com.opensymphony.xwork2.ActionSupport;  
  •   
  • //继承ActionSupport类并重写execute()方法  
  • public class HelloStrutsAction extends ActionSupport {  
  •   
  •     @Override  
  •     public String execute() throws Exception {  
  •         System.out.println("执行Action");  
  •         return SUCCESS;  
  •     }  
  • }  

此类要继承ActionSupport类并重写其execute()方法,execute()方法的返回值是SUCCESS,此常量字段是从父类中继承的,用于表示执行成功并返回结果页面。

5.

编写Struts2的配置文件struts2.xml:

注意,struts2.xml文件一定要放在src目录下!!!

[java] view plain copy



  • <?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">  
  •   
  • <struts>  
  •     <package name="default" namespace="/" extends="struts-default">  
  •     <!-- 定义了请求路径,以及与其对应的Action类的映射关系 -->  
  •         <action name="hellostruts" class="com.Gdstruts.action.HelloStrutsAction">  
  •         <!-- 定义了处理结果和视图资源之间的映射关系 -->  
  •             <result>/result.jsp</result>  
  •         </action>  
  •     </package>  
  • </struts>  

6.

创建视图文件result.jsp:

在WebContent目录下创建一个result.jsp页面,作为Action对象处理成功后的返回页面。

[java] view plain copy



  • <%@ 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>你好Struts2</title>  
  •     </head>  
  •     <body>  
  •         This is result.jsp  
  •     </body>  
  • </html>  

7.最后就要进行验收了,右击项目名,Debug As-->Debug On Server,如果配置好了Tomcat,应该出现如下界面:


点选Tomcat v7.0 Server at localhost之后点击Finish就可以看到如下界面:


哈哈哈,是不是以为配置失败了,因为从来没有过Web基础,Gd当时也是一头雾水,后来还是在视频找到了答案,要具体到action文件上才可以出现运行结果,所以要在地址栏后面加上action文件的名字,那我的就是hellostruts.action了。


在浏览器上的运行结果:


到这里,Struts2的配置就大功告成了,Gd也是又进步了一点点了,加油吧!

【转载】原文地址:https://blog.csdn.net/qq_39209361/article/details/80746762


3 个回复

倒序浏览
回复 使用道具 举报
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马