实例详解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日

相关文章

  • ASP.NET中在不同的子域中共享Session的具体方法

    在ASP.NET中,Session是一种在Web服务器中保存用户数据的机制。在不同的子域中共享Session可以帮助开发者更方便地实现跨站点的数据传递及用户身份验证等功能。本文将介绍ASP.NET中实现在不同的子域中共享Session的具体方法。 方法1:利用Cookie实现子域间Session共享 利用Cookie来实现子域间Session共享的主要思路是…

    Java 2023年6月16日
    00
  • mvc实现图片验证码功能

    MVC实现图片验证码功能 在Web应用程序中,图片验证码是一种常见的安全机制,用于防止机器人或恶意用户自动化攻击。在本文中,我们将介绍如何使用MVC框架来实现图片验证码功能。 步骤 以下是实现图片验证码功能的步骤: 创建一个Controller类,用于处理请求并生成验证码图片。 创建一个View类,用于显示验证码图片。 创建一个Model类,用于生成验证码字…

    Java 2023年5月18日
    00
  • jsp中获得路径的两种方法和获得url路径的方法(推荐)

    JSP中获得路径的两种方法 在JSP中,我们需要经常获取文件或路径相关的信息,下面就介绍两种获取路径的方法: 方法一: <% String path1 = request.getSession().getServletContext() .getRealPath(""); out.println(path1); %> 这种方法…

    Java 2023年6月15日
    00
  • Java运算符从见过到掌握上

    Java运算符是Java语言中非常重要的一个概念。它是程序员进行各种运算操作所必需的。从见过到掌握,需要我们经过以下步骤: 一、了解Java运算符的分类 Java运算符包括算术运算符、赋值运算符、比较运算符、逻辑运算符、位运算符和三目运算符。 算术运算符:+,-,*,/,%,++,–。 赋值运算符:=,+=,-=,*=,/=,%=等等。 比较运算符:==,…

    Java 2023年5月20日
    00
  • Java实现字符串转为驼峰格式的方法详解

    Java实现字符串转为驼峰格式的方法详解 在Java中,字符串转为驼峰格式是一种很常见的操作。下面就给大家分享一下Java实现字符串转为驼峰格式的几种方法。 方法一:使用apache.commons.lang3库 import org.apache.commons.lang3.StringUtils; public class StringUtilsTest…

    Java 2023年5月27日
    00
  • 利用Java如何获取Mybatis动态生成的sql接口实现

    获取Mybatis动态生成的sql接口实现,需要使用到 Mybatis 的反射机制。以下是具体的操作步骤: 步骤一:定义接口 首先,我们需要在 Mybatis 中定义一个 Mapper 接口,这个接口的方法要跟我们要获取的实现方法一致,例如查询方法: public interface UserMapper { List<User> getUser…

    Java 2023年5月20日
    00
  • Android UI设计与开发之ViewPager仿微信引导界面以及动画效果

    Android UI设计与开发之ViewPager仿微信引导界面以及动画效果 一. 引言 Android应用程序作为目前最主流的平台之一,UI设计的重要性越来越突出。ViewPager是Android UI界面设计中重要的一个组件,可以轻松实现左右滑动来切换不同View的效果,因此被广泛应用于app引导界面的设计中。 本文将详细讲解如何使用ViewPager…

    Java 2023年6月1日
    00
  • java实现字符串匹配求两个字符串的最大公共子串

    Java实现字符串匹配求两个字符串的最大公共子串可以通过以下步骤来实现: 首先,我们需要定义两个字符串用于匹配,并创建一个函数或方法来解决此问题。 示例代码: public static String longestCommonSubstring(String s1, String s2) { int len1 = s1.length(), len2 = s…

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