SSH框架整合实战教程:Struts-2.5.18的安装与入门

声明:本篇文章借鉴于其他博主,非个人原创。
原文连接

1.Struts2下载

为了防止软件间的不兼容,我使用了struts-2.5.18,这里有资源供大家下载
链接:https://pan.baidu.com/s/1PlpOn4UPVAtjV_0U5VS3ow
提取码:vp9f

2、Struts2安装

将下载后的文件解压即可,会得到以下结构
在这里插入图片描述
将struts-2.5.18框架目录中的lib打开,得到Struts2开发中可能用到的所有JAR包
在这里插入图片描述

3,Struts2入门,创建Hello_World_Struts2项目

(1),创建Web项目

在这里插入图片描述

输入项目名称,点击next
在这里插入图片描述
点击next.
在这里插入图片描述
点击Finish。
在这里插入图片描述
如果WebConntent/WEB-INF路径下还是没有web.xml文件,进行下面操作
在这里插入图片描述

(2),添加Struts2的JAR包

将Struts2框架依赖的基础JAR文件复制到项目的WEB-INF/lib路径下(注意:千万不要复制多,struts-2.5.18版本就这8个)
在这里插入图片描述
如果JAR包没有被开发工具自动添加到classpath中(图标就是没变成红框中的那样在这里插入图片描述),我们还需要选中JAR,右击鼠标,进行Build Path—>Add to Build Path操作。

(3),在web.xml中配置struts2的前端拦截器(filter),改成下面代码

2.5以上的版本,请把org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter修改为org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter

<?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>Hello_World_Struts2</display-name>
  <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>
  <filter>
       <filter-name>struts2</filter-name>
       <filter-class>
         org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
         </filter-class>
     </filter>
 &lt;filter-mapping&gt;
   &lt;filter-name&gt;struts2&lt;/filter-name&gt;
   &lt;url-pattern&gt;/*&lt;/url-pattern&gt;
  &lt;/filter-mapping&gt;

</web-app>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24

(4),创建Model类MessageStore

在项目的src目录下,新建一个MessageStore.java的类
在这里插入图片描述
在这里插入图片描述
点击 Finish 完成添加,此时在src目录下就可以看到“MessageStore.java”这个文件了

在这里插入图片描述
打开“MessageStore.java”,编写如下代码

package org.apache.struts.helloworld.model;

public class MessageStore {
private String message;
public MessageStore(String msg){
this.setMessage(msg);
}
public String getMessage() {
return message;
}
public void setMessage(String message) {
this.message = message;
}
}

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

(5),创建Action类HelloWorldAction,充当Controller

在项目的src文件夹下添加一个“HelloWorldAction.java”文件,放到“org.apache.struts.helloworld.action”这个包中
在这里插入图片描述
点击【Finish】完成添加,此时在src文件夹下就可以看到“HelloWorldAction.java”文件
在这里插入图片描述
在“HelloWorldAction.java”文件中编写如下代码:

package org.apache.struts.helloworld.action;
import org.apache.struts.helloworld.model.MessageStore;
import com.opensymphony.xwork2.ActionSupport;
public class HelloWorldAction extends ActionSupport {
    private MessageStore msgStore;
    @Override
    public String execute() throws Exception {
       msgStore = new MessageStore("HelloWorld!");
        return SUCCESS;
    }
    public MessageStore getMsgStore() {
        return msgStore;
    }
    public void setMsgStore(MessageStore msgStore) {
        this.msgStore = msgStore;
    }
}

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17

(6),编写Struts2的配置文件

在src目录下新建一个名称为struts.xml文件
在这里插入图片描述
在strusts.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>
<constant name=“struts.devMode” value=“true” />
<package name=“Hello_World_Struts2” extends=“struts-default”>
<action name=“index”>
<result>/index.jsp</result>
</action>
<action name=“hello”
class=“org.apache.struts.helloworld.action.HelloWorldAction”
method=“execute”>
<result name=“success”>/HelloWorld.jsp</result>
</action>

&lt;/package&gt;

</struts>

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

(7),创建视图文件HelloWorld.jsp

在 WebContent 文件夹下创建“HelloWorld.jsp”文件,如下图所示:
在这里插入图片描述
在HelloWorld.jsp编写如下代码

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!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=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
	<h2><s:property value="msgStore.message" /></h2>
</body>
</html>

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

(8),创建Action的URL链接

在 WebContent 文件夹下创建index.jsp文件,index.jsp中的代码如下:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <%@ taglib prefix="s" uri="/struts-tags" %>
<!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=ISO-8859-1">
<title>Basic Struts 2 Application - Welcome</title>
</head>
<body>
	<h1>Welcome To Struts 2!</h1>
	<p><a href="<s:url action='hello'/>">Hello World</a></p>	
</body>
</html>

 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

“<%@ taglib prefix=“s” uri="/struts-tags" %>”表示引入struts2的标签,“<s:url action>”是一个Struts2的标签,用于创建Action的URL链接,“<s:url action=‘hello’/>”表示链接到一个名字为“hello”的action,这个名字为“hello”的action是在struts.xml配置文件配置好的,在struts.xml文件中可以找到如下的配置信息

<action name="hello"
    class="org.apache.struts.helloworld.action.HelloWorldAction" 
    method="execute">
    <result name="success">/HelloWorld.jsp</result>
 </action>

 
 
  • 1
  • 2
  • 3
  • 4
  • 5

(9),部署运行

将项目发布到Eclispe中Tomcat7.0服务器中,如下图所示:
在这里插入图片描述

点击Finish
在这里插入图片描述

运行界面如下图所示
在这里插入图片描述

点击窗口中的Hello World,运行后如下图所示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值