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


    一、创建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;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30

    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;
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    3、表单提交页面 submit.jsp

    
    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Titletitle>
    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>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

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

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Titletitle>
    head>
    <body>
    ${add.a}+${add.b}=${add.sum}
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

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

    <%@ page contentType="text/html;charset=UTF-8" language="java" %>
    <html>
    <head>
        <title>Titletitle>
    head>
    <body>
       ${add.a}+${add.b}=${add.sum}
    body>
    html>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    6、struts.xml配置文件

    
    
    DOCTYPE struts PUBLIC
            "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
            "http://struts.apache.org/dtds/struts-2.3.dtd">
    
    <struts>
      
        <package name="AandB" extends="struts-default">
            <action name="add" class="com.action.AddActon" method="excute">
                <result name="+">/MyWeb/success.jspresult>
                <result name="-">/MyWeb/negative.jspresult>
            action>
    
        package>
    struts>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
  • 相关阅读:
    【数据库原理及应用】——事务并发控制和恢复技术(学习笔记)
    蓝桥杯---第二讲---二分与前缀和
    SpringMvc+Spring+MyBatis+Maven+Ajax+Json注解开发 利用Maven的依赖导入不使用架包模式 (实操十)
    前端基础之《Bootstrap(4)—全局CSS样式_图片、辅助类、响应式工具》
    2024年了,如何从 0 搭建一个 Electron 应用
    【常见的六大排序算法】插入排序、希尔排序、选择排序、冒泡排序、堆排序、快速排序
    【C语言】算法学习·归并排序
    【Web】NodeJs相关例题wp
    蓝牙数据包协议解析
    git pull 报错 error object file is empty , The remote end hung up unexpectedly
  • 原文地址:https://blog.csdn.net/ccb1372098/article/details/128048625