struts2入门(搭建环境、配置、示例)详解

Struts2入门攻略

Struts2是一个基于MVC架构的Web应用程序开发框架。本攻略将介绍如何搭建Struts2开发环境、配置Struts2框架并开发示例项目。

环境搭建

首先,我们需要准备好开发环境:

  1. JDK:Java开发工具包,下载地址:https://www.oracle.com/technetwork/java/javase/downloads/
  2. Eclipse:Java开发IDE,下载地址:https://www.eclipse.org/downloads/
  3. Tomcat:Servlet容器,下载地址:https://tomcat.apache.org/download-80.cgi
  4. Struts2压缩包,下载地址:https://struts.apache.org/download.cgi#struts-lgpl

接下来,我们需要进行一些配置:

  1. 将Tomcat解压到本地,并配置Tomcat的路径到Eclipse的“Servers”选项卡
  2. 将Struts2压缩包解压到Eclipse的“WebContent/WEB-INF/lib”目录中(如果没有这个目录,可以在项目中创建)

至此,我们的环境就已经搭建好了。

Struts2配置

Struts2的配置主要包括:

  1. 创建Struts2配置文件(struts.xml)
  2. 在web.xml中添加Struts2的过滤器

创建Struts2配置文件

在项目的“src”目录下,创建一个名为“struts.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>
    <package name="default" extends="struts-default">
        <action name="hello" class="com.example.HelloWorldAction">
            <result name="success">/hello.jsp</result>
        </action>
    </package>
</struts>

其中,<struts>元素包含了一个或多个<package>元素,每个<package>元素包含了一个或多个<action>元素。每个<action>元素指定了一个类和一个结果(result)。

配置web.xml

在项目的“WebContent/WEB-INF”目录下,打开web.xml文件,并添加以下内容:

<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>

这段代码添加了一个名为“struts2”的过滤器,用于拦截请求并执行相应的Struts2动作。

示例项目

我们将创建一个名为“HelloWorld”的示例项目,介绍Struts2的基本概念和用法。

创建Java类

在项目的“src”目录下,创建一个名为“HelloWorldAction.java”的Java类,并写入以下内容:

package com.example;

import com.opensymphony.xwork2.ActionSupport;

public class HelloWorldAction extends ActionSupport {

    @Override
    public String execute() throws Exception {
        return SUCCESS;
    }

}

此类继承了ActionSupport类,其execute()方法返回SUCCESS常量表示成功。

创建JSP页面

在项目的“WebContent”目录下,创建一个名为“hello.jsp”的JSP页面,并写入以下内容:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Hello World!</title>
</head>
<body>
    <h1>${text}</h1>
</body>
</html>

运行示例

现在,我们就可以启动Tomcat服务器,并在浏览器中访问http://localhost:8080/HelloWorld/hello.action来查看“Hello World!”页面了。

另一个示例

我们将创建一个名为“Calculator”的示例项目,介绍Struts2操作表单和参数的用法。

创建Java类

在项目的“src”目录下,创建一个名为“CalculatorAction.java”的Java类,并写入以下内容:

package com.example;

import com.opensymphony.xwork2.ActionSupport;

public class CalculatorAction extends ActionSupport {

    private int number1;
    private int number2;
    private int result;

    public int getNumber1() {
        return number1;
    }

    public void setNumber1(int number1) {
        this.number1 = number1;
    }

    public int getNumber2() {
        return number2;
    }

    public void setNumber2(int number2) {
        this.number2 = number2;
    }

    public int getResult() {
        return result;
    }

    public void setResult(int result) {
        this.result = result;
    }

    @Override
    public String execute() throws Exception {
        result = number1 + number2;
        return SUCCESS;
    }

}

此类包含了三个属性:number1number2result,以及getPropertysetProperty方法。其execute()方法从请求参数中获取number1number2的值,并将它们相加后赋值给result

创建JSP页面

在项目的“WebContent”目录下,创建一个名为“calculator.jsp”的JSP页面,并写入以下内容:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Calculator</title>
</head>
<body>
    <h1>Calculator</h1>
    <form action="calculator.action" method="post">
        Number 1: <input type="text" name="number1" value="0" /><br />
        Number 2: <input type="text" name="number2" value="0" /><br />
        <input type="submit" value="Calculate" />
    </form>
    <p>Result: ${result}</p>
</body>
</html>

此页面包含了一个表单,其中有两个输入框表示number1number2,以及一个提交按钮。在表单提交后,将显示result的值。

运行示例

现在,我们就可以启动Tomcat服务器,并在浏览器中访问http://localhost:8080/Calculator/calculator.jsp来查看“Calculator”页面了。

在表单中输入两个数,点击提交按钮后,将在页面上显示它们的和。

总结

通过本攻略,我们学习了如何搭建Struts2开发环境、配置Struts2框架并开发示例项目。Struts2是一个功能强大的Web应用程序开发框架,我们可以用它来开发复杂的Web应用程序。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:struts2入门(搭建环境、配置、示例)详解 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • JSP取得在WEB.XML中定义的参数

    首先,我们可以在web.xml文件中定义一些全局参数,在JSP页面中可以通过ServletContext对象访问这些参数。具体操作步骤如下: 在web.xml文件中定义参数 <context-param> <param-name>globalParam</param-name> <param-value>这是一…

    Java 2023年6月15日
    00
  • Ubuntu16安装Tomcat8.5和MySQL5.7的教程

    下面是 “Ubuntu16安装Tomcat8.5和MySQL5.7的教程”的完整攻略: 步骤一:安装Tomcat 在终端中输入以下命令以下载Tomcat: sudo apt-get install tomcat8 tomcat8-admin 安装完Tomcat之后,启动它: sudo systemctl start tomcat8 验证是否成功安装Tomca…

    Java 2023年5月19日
    00
  • Java提效神器Stream的一些冷门技巧汇总

    Java提效神器Stream的一些冷门技巧汇总 什么是Java Stream Java Stream是Java 8引入的一个新的集合处理方式,它可以用来处理很大的数据流,并行处理数据以及实现简洁的函数式编程。 Stream的主要优点是可以大大简化代码,同时可以在处理大数据集时提高性能。Stream是延迟执行的,也就是说它不会立即处理所有的数据,而是在需要的时…

    Java 2023年5月26日
    00
  • 利用Java中Calendar计算两个日期之间的天数和周数

    我们来详细讲解一下如何利用Java中的Calendar类计算两个日期之间的天数和周数。 步骤一:创建Calendar实例 我们首先要创建两个Calendar对象,来表示两个日期。这里我们可以使用Calendar类的静态方法getInstance()来获取一个默认时区的实例。 Calendar cal1 = Calendar.getInstance(); Ca…

    Java 2023年5月20日
    00
  • java使用JDBC动态创建数据表及SQL预处理的方法

    Java使用JDBC动态创建数据表及SQL预处理的方法 创建数据表 在JDBC中,创建数据表只需在Java中编写一个SQL CREATE TABLE语句并通过JDBC API执行该语句即可。示例代码如下: import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQ…

    Java 2023年5月19日
    00
  • 浅谈ASP数据库下载漏洞

    浅谈ASP数据库下载漏洞攻略 什么是ASP数据库下载漏洞 ASP数据库下载漏洞,是指在ASP网站中由于程序员未对用户输入数据进行合适的验证,导致攻击者利用构造恶意请求下载网站中的数据库文件。攻击者可以通过下载数据库文件获取网站中的敏感数据,如用户信息、密码、订单记录等。 攻击过程 攻击者在ASP网站中使用”download.asp?”的关键字搜索,找到下载文…

    Java 2023年6月16日
    00
  • Java实现解析ini文件对应到JavaBean中

    要实现解析ini文件对应到JavaBean中,可以通过以下步骤进行: 1.引入依赖 要解析ini文件可以使用jedis的依赖,可以在pom.xml文件中加入以下代码来引入依赖: <dependency> <groupId>redis.clients</groupId> <artifactId>jedis<…

    Java 2023年6月15日
    00
  • 微信小程序仿知乎实现评论留言功能

    下面我将为您详细讲解“微信小程序仿知乎实现评论留言功能”的完整攻略。 一、前置知识和准备工作 在开始编写代码前,需要准备好以下工具和知识: 微信开发者工具:用于开发和调试微信小程序,可在微信公众平台下载并安装。 知乎API:用于获取知乎的相关数据,需要向知乎开放平台申请。 Markdown渲染库:用于将知乎中的Markdown格式的文本转化成小程序可显示的格…

    Java 2023年5月23日
    00
合作推广
合作推广
分享本页
返回顶部