Struts2开发环境搭建 附简单登录功能实例

Struts2开发环境搭建 附简单登录功能实例

开发环境要求

首先,我们需要准备好以下开发环境:
- Java JDK 1.7或者更高版本
- Apache Tomcat 7或者更高版本
- Eclipse IDE 或者其他Java集成开发环境

下载安装Tomcat

下载Tomcat

在Apache Tomcat的官网上,我们可以选择合适的版本进行下载和安装。一般来说,我们会选择最新版本的Tomcat,点击下载链接即可。

安装Tomcat

下载完毕后,我们将Tomcat文件解压缩到一个文件夹中。接着,我们进入Apache Tomcat的bin目录中,执行startup.bat或者startup.sh命令,启动Tomcat服务器。如果一切顺利,我们应该能在浏览器中访问http://localhost:8080,看到Tomcat的欢迎页面。

Eclipse中配置Tomcat支持

安装Eclipse

首先,我们需要在Eclipse官网上下载Eclipse IDE for Java EE Developers。下载完成后,我们可以通过双击压缩包中的eclipse.exe(windows系统)或者eclipse文件(Linux或macOS系统)启动Eclipse。

安装Tomcat Server插件

为了在Eclipse中能够方便地管理Tomcat服务器,我们需要安装Tomcat Server插件。

在Eclipse打开Help > Eclipse Marketplace,在搜索框中输入“Tomcat”,点击Go后,我们会看到一系列的Tomcat插件。我们选择最受欢迎的一个,如 Tomcat Plugin for Eclipse ,点击Install安装。

注意,安装过程中可能需要选择所需的Eclipse版本和路径。

在Eclipse中配置Tomcat服务器

安装完Tomcat插件后,我们需要在Eclipse中配置Tomcat服务器。

打开Eclipse,依次选择Window > Preferences > Server > Runtime Environments,在“Add”中选择合适的Tomcat版本,如Tomcat 8,然后点击Next。接着,我们在“Tomcat installation directory”中选择Tomcat的安装路径,然后点击Finish完成Tomcat的配置。

现在,我们已经成功地在Eclipse中配置了Tomcat服务器支持。接下来,我们可以创建一个Web应用程序并将其部署到Tomcat服务器中。

创建Struts2 Web应用程序

创建Web应用程序

在Eclipse中创建一个新的Web项目,依次选择File > New > Other > Web > Dynamic Web Project,在对话框中输入项目名称,如“Struts2Demo”,然后关闭对话框。

接着,我们需要在新建的项目中添加Struts2支持。依次选择File > New > Other > Web > Struts2 > Struts2 Project > Next,在对话框中将Struts2版本设置为最新版本,输入包名(通常为com)和命名空间。选择Finish,等待项目创建完成。

添加Struts2库和配置文件

在刚创建的Struts2项目中,我们需要添加Struts2库和配置文件。具体来说,我们需要将struts2-core.jar和struts2-convention-plugin.jar添加到项目的classpath中,并将struts.xml的配置文件复制到项目的src/main/resources目录。

在Eclipse中,我们可以依次选择Project Properties > Java Build Path > Libraries > Add JARs...,然后添加struts2-core.jar和struts2-convention-plugin.jar这两个jar包。接下来,我们需要在src/main/resources目录中创建一个名为struts.xml的文件,并复制以下内容:

<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN" "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
    <constant name="struts.devMode" value="true" />

    <package name="default" namespace="/" extends="struts-default">

        <action name="login" class="com.struts2.example.action.LoginAction">
            <result name="success">/pages/index.jsp</result>
            <result name="login">/pages/login.jsp</result>
        </action>
        <action name="logout" class="com.struts2.example.action.LoginAction" method="logout">
            <result name="success">/pages/login.jsp</result>
        </action>

    </package>
</struts>

其中,上面的配置中定义了两个action,一个是用户登录(login),一个是用户登出(logout)。类名为com.struts2.example.action.LoginAction,分别映射到/pages/index.jsp/pages/login.jsp页面。

创建登录功能示例

创建JSP文件

现在,我们来创建一个JSP页面,用于显示登录表单。在Web项目的WebContent目录下,创建一个名为“pages”的子文件夹,并创建一个名为“login.jsp”的文件。

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>登录页面</title>
</head>
<body>
    <form action="login.action" method="post">
        <p>用户名:<input type="text" name="username"/></p>
        <p>密码:<input type="password" name="password"/></p>
        <p><input type="submit" value="登录"/></p>
    </form>
</body>
</html>

这个JSP页面只是简单地包含了一个表单,提交到“login.action”这个Struts2的Action,将用户名和密码传递过去。

创建Action类

现在,我们需要在项目中创建对应的Action类,用于处理用户的输入并返回结果。在刚才创建的Struts2项目的src/main/java目录下,创建一个名为“com/struts2/example/action”的新包,然后在这个包下创建一个名为“LoginAction.java”的类。该类可以继承Struts2提供的ActionSupport类。

package com.struts2.example.action;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport {

    private String username;
    private String password;

    public String execute() {
        if ("admin".equals(username) && "admin123".equals(password)) {
            return SUCCESS;
        } else {
            return LOGIN;
        }
    }

    public void setUsername(String username) {
        this.username = username;
    }

    public String getUsername() {
        return username;
    }

    public void setPassword(String password) {
        this.password = password;
    }

    public String getPassword() {
        return password;
    }

    public String logout() {
        return SUCCESS;
    }
}

上面的这个Action主要实现了一个用户登录和登出功能。登录功能通过判断用户名和密码是否正确,正确则返回SUCCESS字符串,否则返回一个LOGIN字符串,让Struts2框架知道需要跳转到哪个页面。注销功能通过返回SUCCESS字符串实现。

配置struts.xml文件

现在,我们还需要在刚才复制到项目中的struts.xml文件中添加该Action的配置。如下:

<action name="login" class="com.struts2.example.action.LoginAction" method="execute">
    <result name="success">/pages/index.jsp</result>
    <result name="login">/pages/login.jsp</result>
</action>
<action name="logout" class="com.struts2.example.action.LoginAction" method="logout">
    <result name="success">/pages/login.jsp</result>
</action>

注意,我们需要在action中根据method属性指定调用哪个方法,“login”是调用execute()方法,而"logout"是调用logout()方法。

在Tomcat上部署和测试Web应用程序

部署Web应用程序

为了在Tomcat中部署Web应用程序,我们需要在Eclipse中创建一个Web Deployment Assembly。

依次选择项目的Properties > Deployment Assembly > Add... > Java Build Path Entries,选择WebContent/WEB-INF/lib,确定。 勾选WebContent目录,将该目录下的内容打包,选择“Next”,在Target 路径前面勾选“Package”,然后选择“Finish”,生成一个.war包,如“Struts2Demo.war”。

接着,我们需要将.war包复制到Tomcat的webapps目录下。启动Tomcat服务器,如果Tomcat没有自动解压缩.war包,我们可以手动解压缩该包,然后再次启动Tomcat服务器。

测试Web应用程序

在浏览器中访问http://localhost:8080/Struts2Demo/pages/login.jsp,即可看到登录页面。在表单中输入用户名和密码,点击“登录”按钮,程序会根据用户名和密码的正确性,跳转到相应的页面。

除了上面的登录示例,我们还可以在Struts2中创建其他类型的Web应用。需要注意的是,不同类型的Web应用程序可能需要使用不同的Struts2插件和配置文件。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Struts2开发环境搭建 附简单登录功能实例 - Python技术站

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

相关文章

  • java中字符串与日期的转换实例

    我们来详细讲解一下“java中字符串与日期的转换实例”的完整攻略。 1. 字符串转日期 在Java中,可以用SimpleDateFormat类的parse方法来将字符串转换成日期对象。具体步骤如下: (1)创建SimpleDateFormat实例: SimpleDateFormat sdf = new SimpleDateFormat("yyyy-…

    Java 2023年6月1日
    00
  • Java 双指针项目中的实际应用

    背景说明 最近在做财务相关的系统,对账单核销预付款从技术角度来看就是将两个数组进行合并 对账单核销预付款前提条件: 对账单总金额必须等于未核销金额 数据示例 对账单数据 单号 金额 B0001 100 B0002 80 B0003 120 预付款数据 单号 未核销金额 PRE001 110 PRE002 190 结果数据 预付款单号 核销金额 对账单号 PR…

    Java 2023年5月4日
    00
  • 使用spring框架中的组件发送邮件功能说明

    使用Spring框架中的组件发送邮件功能说明 Spring框架提供了非常方便的邮件发送组件,通过简单的配置就可以实现邮件发送的功能,本文将详细讲解如何使用Spring框架中的组件发送邮件。 步骤1:添加依赖 在pom.xml文件中添加以下依赖: <dependency> <groupId>org.springframework<…

    Java 2023年5月19日
    00
  • 基于WebUploader的文件上传js插件

    这里是关于基于WebUploader的文件上传js插件的完整攻略,包括安装、配置和示例的详细讲解。 安装 WebUploader是一个基于HTML5的文件上传插件,支持分片上传、大文件上传等功能。在使用WebUploader之前,我们需要引入jQuery库并下载WebUploader插件。 在HTML文件中引入jQuery及WebUploader插件。示例代…

    Java 2023年5月20日
    00
  • java 中MyBatis注解映射的实例详解

    Java中MyBatis注解映射的实例详解 MyBatis是一款优秀的ORM框架,它可以帮助开发者简化编码工作,并提高数据访问性能。在MyBatis中,注解映射是一种非常常用的开发方式。本文将详细讲解Java中MyBatis注解映射的实例,并提供两个示例供参考。 环境准备 在进行MyBatis注解映射前,我们需要进行一些环境准备工作。具体步骤如下: 下载My…

    Java 2023年5月20日
    00
  • 使用list stream: 任意对象List拼接字符串

    使用List Stream将任意对象列表拼接成字符串,可以通过以下步骤完成: 准备任意对象类型的列表。 使用 List Stream 将列表转换为字符串。 使用 Collectors.joining() 方法拼接列表元素。 下面是将任意对象列表拼接为字符串的完整代码示例: List<User> userList = Arrays.asList( …

    Java 2023年5月27日
    00
  • 标记-清除算法的作用是什么?

    以下是关于标记-清除算法的详细讲解: 什么是标记-清除算法? 标记-清除算法是一种常见的垃圾回收算法,它的原理是在程序运行过程中,标记所有不再使用的内存空间,然后清除这些内存空间,从而回收内存空间。标记清除算法分为两个阶段:标记阶段和清除阶段。 标记阶段 在标记阶段,垃圾回收器会遍历所有的对象,标记所有不再使用的对象。标记的方式通常是在对象头中添加一个标记位…

    Java 2023年5月12日
    00
  • 一文教你如何使用原生的Feign

    一文教你如何使用原生的Feign 简介 Feign 是一个基于Java的HTTP客户端,用于将HTTP请求映射到界面上,并将调用者与远程服务进行解耦。Feign通过使用注解支持请求/响应编码、注释传播、错误处理等功能。 使用原生的Feign的步骤 步骤一:引入依赖 首先,我们需要在项目中引入feign相关的依赖,以下是一些常用的依赖: <depende…

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