创建Struts2项目并实现一个例子

本文介绍了如何在IntelliJ IDEA中创建Struts2项目,并通过一个简单的例子(两个数相加)演示了Action和配置过程。步骤包括下载依赖、配置web.xml、编写Action类和JSP页面,以及struts.xml的配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、创建Struts2项目

本人所用idea应用程序。以下全部内容,都是以idea为例

创建项目前,你需要下载Struts2所需要的jar包,你可以直接去官网下载,也可以点击https://pan.baidu.com/s/1DlnXJMLrBFf44dZ_kv8rXA?pwd=ccb1去下载我的。

1、
在这里插入图片描述

2、
在这里插入图片描述

3、
在这里插入图片描述
把这些全部选中,(这些是最基本的jar包,你也可以上官网下载比较全的包,我这里只是下载的基本版。)

4、
项目名字,自己起就可以了,
项目位置,根据自己的情况,自己选择即可。

填完后,点击finish即可
在这里插入图片描述

5、在进行配置之前,你需要做一些准备工作,创建一个classes文件
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
找到你创建的classes文件。选中它。第10步和第11步都是选中这个文件夹

在这里插入图片描述

点击Apply后,发现classes文件夹变颜色后,说明操作成功。
在这里插入图片描述

6、打开web.xml你会发现idea已经帮我写好这些配置,我们就不需要自己写了。
我们只需要写struts.xml 即可
在这里插入图片描述
在这里插入图片描述

完成以上操作后,Struts2项目创建完毕。

二、struts2的一个例子

这里以实现2个数相加为例
项目整体结构
在这里插入图片描述

1、创建一个实现2个数相加的类,命名为 Add。

注意这个类,必须有默认构造函数,每个数据成员的set/get方法。

package com.model;

public class Add {
    private  double a;
    private double b;
    private double sum;

    public double getSum() {
        return a+b;
    }
    public Add() {
    }

    public double getA() {
        return a;
    }

    public void setA(double a) {
        this.a = a;
    }

    public double getB() {
        return b;
    }

    public void setB(double b) {
        this.b = b;
    }
}

2、创建Action类 ,实现业务前期处理
注意:这个类,必须有默认构造函数,每个数据成员的set/get方法。对于业务实现的方法,返回值可以随便取,但是要在struts.xml文件中与返回值一致。

package com.action;

import com.model.Add;

public class AddActon {
    private Add add;

    public String excute(){   
        String ans="";
        if(add.getSum()>=0){
            ans="+";
        }else
            ans="-";
        return ans;
    }

    public AddActon() {
    }

    public Add getAdd() {
        return add;
    }

    public void setAdd(Add add) {
        this.add = add;
    }
}

3、表单提交页面 submit.jsp


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
  <form action="add.action" method="post">
      a: <input type="text" name="add.a"> <br>
      b: <input type="text" name="add.b"> <br>
      <input type="submit">

  </form>
</body>
</html>

4、结果为正数页面 success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
${add.a}+${add.b}=${add.sum}
</body>
</html>

5、结果为负数页面 negative.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Title</title>
</head>
<body>
   ${add.a}+${add.b}=${add.sum}
</body>
</html>

6、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">

<struts>
  <!--   package 的name= 名字可以随便命名,但还是建议,命名一个跟这个模块功能相关的名字。
  
            extends=“” 这个是继承,直接就是这样,别改
  action 的name最好命名为实现的功能,
          class 是调用的类,
          method是 所用调用类的方法。 
          
   result name要与调用方法的返回值相一致,通过不同的返回值,转发不同的页面。

-->
    <package name="AandB" extends="struts-default">
        <action name="add" class="com.action.AddActon" method="excute">
            <result name="+">/MyWeb/success.jsp</result>
            <result name="-">/MyWeb/negative.jsp</result>
        </action>

    </package>
</struts>
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值