实例详解java Struts2的配置与简单案例

实例详解Java Struts2的配置与简单案例

简介

Java Struts2是MVC框架中的一种,它通过将应用程序分成模型、视图和控制器三个部分,从而使得开发人员能够更加清晰地组织代码并且更加容易地维护代码。

本文将会通过具体的操作步骤详细说明如何在Java Struts2中进行配置,并且给出两个简单的案例。

配置步骤

步骤一:下载和安装Java Struts2

Java Struts2的官方网址为:http://struts.apache.org/,下载最新的版本后,按照官方文档的说明进行安装。

步骤二:创建项目

使用Eclipse或者其他IDE工具创建一个名为“Struts2Demo”的Java项目。

步骤三:配置Struts2

  • 在该项目中的WebContent文件夹下,创建“WEB-INF”文件夹并在其中创建名为“lib”的文件夹。将下载好的Java Struts2库文件拷贝到该文件夹中。

  • 在“WebContent”文件夹下创建名为“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="default" namespace="/" extends="struts-default">
    <action name="hello" class="com.example.struts2.HelloWorldAction" method="execute">
      <result name="success">/jsp/helloWorld.jsp</result>
    </action>
  </package>
</struts>

步骤四:创建Java类和JSP文件

  • 在com.example.struts2包下创建名为“HelloWorldAction”的Java类,代码如下:
package com.example.struts2;

public class HelloWorldAction {
    private String message;

    public String execute() throws Exception {
        setMessage("Hello World!");
        return "success";
    }

    public void setMessage(String message){
        this.message = message;
    }

    public String getMessage(){
        return this.message;
    }
}
  • 在项目的“WebContent”文件夹下创建名为“helloWorld.jsp”的文件。以下是该文件的代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>Hello World</title>
  </head>
  <body>
    <h2><s:property value="message"/></h2>
  </body>
</html>

步骤五:测试应用程序

  • 启动Tomcat服务器,点击“Run As”->“Run on Server”。
  • 在浏览器中输入地址http://localhost:8080/Struts2Demo/hello.action
  • 如果一切正常,我们将看到输出“Hello World!”的页面。

示例一:表单处理

在这个示例中我们将展示如何使用Java Struts2处理表单。

  • 在“WebContent”文件夹下创建名为“form.jsp”的JSP文件,以下是该文件的代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>Struts2 Form</title>
  </head>
  <body>
    <s:form action='sample.action'>
      <s:textfield name='name' label='Name'/>
      <s:submit/>
    </s:form>
  </body>
</html>
  • 在“struts.xml”文件中添加如下代码,以处理表单:
  <package name="sample" namespace="/" extends="struts-default">
    <action name="sample" class="com.example.struts2.SampleAction">
      <result name="success">/jsp/sample.jsp</result>
    </action>
  </package>
  • 在“com.example.struts2”包下,创建名为“SampleAction”的Java文件,代码如下:
package com.example.struts2;

public class SampleAction {
    private String name;

    public String execute() throws Exception {
        return "success";
    }

    public void setName(String name){
        this.name = name;
    }

    public String getName(){
        return this.name;
    }
}
  • 最后,在项目的“WebContent”文件夹下创建名为“sample.jsp”的文件,以下是该文件的代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
  <head>
    <title>Struts2 Sample Output</title>
  </head>
  <body>
    <h2>You entered: <s:property value='name'/></h2>
  </body>
</html>

完成上述配置后,我们就可以测试表单处理了。

  • 启动Tomcat服务器,点击“Run As”->“Run on Server”。
  • 在浏览器中输入地址http://localhost:8080/Struts2Demo/form.jsp,将会看到表单。
  • 在表单中输入任意名字并且点击提交按钮。
  • 应用程序将会处理这个表单,在完成后进入/sample.jsp,并且输出你刚刚输入的名字。

示例二:传递参数和条件语句

在这个示例中,我们将会展现如何在Java Struts2中传递参数和使用条件语句。

  • 在“WebContent”文件夹下创建名为“loop.jsp”的JSP文件,以下是该文件的代码:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Struts2 Loop</title>
</head>
<body>
    <h1>Looping through List of Animals:</h1>
    <s:iterator value="animals">
        <s:if test="%{size == 0}">
            <p>No Animals Found</p>
        </s:if>
        <s:else>
            <p>Name: <s:property/></p>
        </s:else>
    </s:iterator>
</body>
</html>
  • 在“struts.xml”文件中添加如下代码:
  <package name="loop" namespace="/" extends="struts-default">
    <action name="loop" class="com.example.struts2.LoopAction">
      <result name="success">/jsp/loop.jsp</result>
    </action>
  </package>
  • 在“com.example.struts2”包下创建名为“LoopAction”的Java文件,代码如下:
package com.example.struts2;

import java.util.ArrayList;
import java.util.List;

public class LoopAction {
    private List<String> animals;

    public String execute(){
        animals = new ArrayList<String>();
        animals.add("Cat");
        animals.add("Dog");
        animals.add("Horse");

        if(animals.size()==0){
            return "error";
        }
        return "success";
    }

    public List<String> getAnimals(){
        return animals;
    }

    public void setAnimals(List<String> animals){
        this.animals = animals;
    }
}

完成上述配置后,我们就可以测试传递参数和条件语句了。

  • 启动Tomcat服务器,点击“Run As”->“Run on Server”。
  • 在浏览器中输入地址http://localhost:8080/Struts2Demo/loop.action,将会看到一个包含了所有动物名字的页面。

结论

通过本文所述的步骤和示例,我们可以掌握Java Struts2的基本使用方法,并且在实际开发中使用Java Struts2来实现MVC架构的应用程序。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:实例详解java Struts2的配置与简单案例 - Python技术站

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

相关文章

  • FusionCharts图表显示双Y轴双(多)曲线

    要讲解“FusionCharts图表显示双Y轴双(多)曲线”,我们需要了解以下几个方面: FusionCharts的基本使用: FusionCharts是一种可以创建多种类型图表的强大JavaScript库。使用FusionCharts的步骤如下: 引入FusionCharts库文件; 创建一个用于显示图表的空间; 创建一个包含图表属性和数据的JSON对象;…

    Java 2023年6月15日
    00
  • springboot2 生产部署注意事项及示例代码

    下面是对“Spring Boot 2 生产部署注意事项及示例代码”的详细讲解。 Spring Boot 2 生产部署注意事项 1. 外部配置 Spring Boot 2 推崇使用外部配置,在生产环境中,一般将配置分离成一个单独的配置文件,不要将配置硬编码在应用程序中。这样可以更方便地进行部署和管理,同时也减少 Hard Code 带来的维护成本。可以使用环境…

    Java 2023年5月15日
    00
  • 基于Java实现考试管理系统

    基于Java实现考试管理系统攻略 准备工作 首先,需要安装Java开发工具和MySQL数据库。常见的Java开发工具有Eclipse、IntelliJ IDEA等,可以根据个人喜好选择使用。同时还需要学习Java基础语法和SQL语句。 设计数据库表结构 考试管理系统需要存储的信息包括考生信息、考试科目信息、试卷信息、试题信息、考试成绩信息等。需要根据需求设计…

    Java 2023年5月19日
    00
  • java内部测试类代码详解

    Java内部测试类是用于测试Java类的代码。在Java中,一个测试类的代码通常与被测试的类的代码分开,并且是作为单元测试使用的。在本文中,我们将介绍如何编写Java内部测试类,并给出两个示例来说明它的用法。 编写Java内部测试类 创建一个与被测试类相对应的测试类,并将其置于被测试类的代码文件夹中。 导入被测试类的所有依赖项。 创建测试方法,并使用Juni…

    Java 2023年5月23日
    00
  • jsp实现登录界面

    那么我们首先了解一下jsp实现登录界面的步骤: 创建一个jsp文件用于展示登录界面,包含用户名和密码输入框、登录按钮等组件。 编写一个servlet用于处理用户提交的登录表单数据,校验用户名和密码是否正确。 如果验证通过,将用户信息保存到会话中,然后跳转到登录成功的页面。 如果验证不通过,返回登录界面,并在界面上展示错误提示信息。 下面是一个示例: 创建一个…

    Java 2023年6月15日
    00
  • selenium+java破解极验滑动验证码的示例代码

    请见以下攻略: selenium+java破解极验滑动验证码的示例代码攻略 简介 极验滑动验证码是一种常用的图形验证码,它需要用户在滑动拼图的同时,滑块位置与拼图位置匹配,才能完成验证。本篇攻略讲解使用selenium结合java来破解极验滑动验证码,并提供两个示例说明。 准备工作 在使用selenium之前,你需要先下载安装好java sdk和seleni…

    Java 2023年6月15日
    00
  • Java实现HDFS文件上传下载

    Java实现HDFS文件上传下载攻略 HDFS是Hadoop的分布式文件系统,它提供了可靠的数据存储和高效的数据访问功能。对于Java程序员而言,使用Java API实现HDFS文件上传下载非常方便。在本篇文章中,我们将详细讲解如何使用Java API实现HDFS文件上传下载。 前置条件 安装Hadoop环境,并确保HDFS服务已经启动。 在Java程序中引…

    Java 2023年5月19日
    00
  • Mybatis如何配置连接池

    MyBatis可以通过配置连接池来提高数据库操作的性能,下面是配置连接池的详细攻略: 步骤1:添加连接池依赖 在pom.xml文件中添加对连接池的依赖,例如: <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId…

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