从搭建Struts2 开发环境说起

下面我将详细介绍“从搭建Struts2 开发环境说起”的完整攻略。

1. 安装Java环境

在使用 Struts2 开发前,首先需要安装 Java 开发环境。可以到官网下载并安装 JDK,这里我以 JDK 1.8 为例。

  1. 下载JDK 1.8安装包,并安装到你的电脑上。
  2. 配置JAVA_HOME环境变量,将JDK安装路径添加到PATH环境变量中,以便在命令行中可以使用Java和javac等相关命令。假设JDK安装在了C盘根目录下,则配置方式如下:
export JAVA_HOME=C:\Java\jdk1.8.0_281
export PATH=$JAVA_HOME\bin:$PATH

2. 安装开发工具

接下来,需要安装一个 Java 开发工具,这里我们推荐使用 Eclipse,Eclipse 是一款功能强大的开发工具,支持 Struts2 开发。以下是 Eclipse 的安装过程:

  1. 下载 Eclipse 安装包,解压到某个目录下。
  2. 运行 Eclipse,选择一个工作空间,这个工作空间将保存你编写的所有项目。
  3. 安装 Eclipse 的 Web 开发插件(选装),它将帮助开发者进行 Web 项目的开发,如组建 Struts2 项目等。

3. 下载 Struts2 框架

下载 Struts2 开发框架,你可以从 Struts2 官网下载最新版本,也可以在 Maven 项目中引入 struts-core 依赖,这里我们以下载方式为例。

  1. 访问 Struts2 下载页面,下载最新版本的 Struts2。
  2. 将下载的文件解压到某个目录下。

4. 新建 Struts2 项目

在 Eclipse 中新建一个 Struts2 项目:

  1. 打开 Eclipse,选择“File”->“New”->“Other”,打开“New Project” 窗口。
  2. 选择 “Struts2”->“Struts2 Project”。
  3. 输入项目名称,选择 Struts 版本和 JRE 版本,将 Struts2 核心库文件所在的目录指定为当前项目中的 lib 目录,点击 Finish。

现在,你就可以在 Eclipse 中开发和调试 Struts2 项目了。

5. 示例1:Hello World

下面,我们来编写一个简单的 Struts2 应用:Hello World。这个应用程序不需要任何数据库连接,只要能在浏览器中返回 “Hello World!”,就算是成功了。

  1. 创建 helloworld.jsp 文件,存放在 webapp 目录下,内容如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>Hello World</title>
</head>
<body>
  <h2>${message}</h2>
</body>
</html>
  1. 创建 HelloWorld.java 文件,存放在 src 目录下,内容如下:
package com.example;

public class HelloWorld {

  private String message;

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

  public String getMessage() {
    return message;
  }

  public void setMessage(String message) {
    this.message = message;
  }
}
  1. 在 struts.xml 文件中配置 HelloWorld 的 Action,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
  <package name="default" extends="struts-default">
    <action name="hello" class="com.example.HelloWorld">
      <result name="success">/helloworld.jsp</result>
    </action>
  </package>
</struts>
  1. 启动你的项目,访问 http://localhost:8080/你的项目名/hello.action,就可以看到浏览器中返回的 “Hello World!” 了。

6. 示例2:登录页面

下面,我将为你介绍一个更为复杂的 Struts2 应用:登录页面。这个应用程序需要一个数据库连接,用于验证用户输入的账号和密码是否正确。在这个示例中,我使用 MySQL 数据库作为示范。

  1. 首先,需要创建一个数据库,并创建一个 users 表,用于存储用户账号密码等信息。SQL 语句如下:
CREATE TABLE users (
    id INT auto_increment PRIMARY KEY,
    username VARCHAR(50) NOT NULL,
    password VARCHAR(50) NOT NULL
);
  1. 创建 login.jsp 文件用于输入账号密码,存放在 webapp 目录下,内容如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>登录页面</title>
</head>
<body>
  <form action="login.do" method="post">
    <table>
      <tr>
        <td>用户名:</td>
        <td><input type="text" name="username"></td>
      </tr>
      <tr>
        <td>密码:</td>
        <td><input type="password" name="password"></td>
      </tr>
      <tr>
        <td colspan="2"><input type="submit" value="登录"></td>
      </tr>
      </table>
  </form>
</body>
</html>
  1. 创建 LoginAction.java,用于处理登录请求和验证用户身份,存放在 src 目录下,内容如下:
package com.example;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class LoginAction {

  private String username;
  private String password;
  private String message;

  public String execute() throws Exception {
    Connection conn = null;
    Statement stmt = null;
    ResultSet rs = null;
    try {
      Class.forName("com.mysql.jdbc.Driver").newInstance();
      conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "root", "123456");
      stmt = conn.createStatement();
      rs = stmt.executeQuery("SELECT * FROM users WHERE username='" + username + "' AND password='" + password + "'");
      if (rs.next()) {
        setMessage("登录成功!");
        return "success";
      } else {
        setMessage("用户名或密码错误!");
        return "error";
      }
    } catch (Exception e) {
      e.printStackTrace();
      setMessage(e.getMessage());
      return "error";
    } finally {
      if (rs != null) rs.close();
      if (stmt != null) stmt.close();
      if (conn != null) conn.close();
    }
  }

  public String getUsername() {
    return username;
  }

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

  public String getPassword() {
    return password;
  }

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

  public String getMessage() {
    return message;
  }

  public void setMessage(String message) {
    this.message = message;
  }
}
  1. 在 struts.xml 文件中配置 LoginAction 的 Action,内容如下:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
    "http://struts.apache.org/dtds/struts-2.5.dtd">
<struts>
  <package name="default" extends="struts-default">
    <action name="login" class="com.example.LoginAction">
      <result name="success">/success.jsp</result>
      <result name="error">/error.jsp</result>
    </action>
  </package>
</struts>
  1. 创建 success.jsp 文件,用于显示登录成功信息,存放在 webapp 目录下,内容如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>登录成功</title>
</head>
<body>
  <h2>${message}</h2>
</body>
</html>
  1. 创建 error.jsp 文件,用于显示登录失败信息,存放在 webapp 目录下,内容如下:
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>登录失败</title>
</head>
<body>
  <h2>${message}</h2>
  <a href="login.jsp">返回</a>
</body>
</html>
  1. 启动你的项目,访问 http://localhost:8080/你的项目名/login.jsp,输入正确的账号和密码,就可以看到浏览器中返回的 “登录成功!”,否则会返回 “用户名或密码错误!”。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:从搭建Struts2 开发环境说起 - Python技术站

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

相关文章

  • Java小程序计算圆周率代码

    Java小程序计算圆周率代码攻略 1. 程序说明 本程序使用Java语言编写,旨在计算圆周率的值。程序实现的原理是基于蒙特卡罗方法:即在一个正方形内部随机产生若干个点,通过这些点中落入正方形内的个数与总点数的比值来估算出圆周率的值。 2. 实现步骤 2.1 创建源文件 首先在Java IDE(如Eclipse、IntelliJ IDEA等)中创建一个Java…

    Java 2023年5月23日
    00
  • java中int初始化可以为0,但不能为NULL问题

    在Java中,int类型的变量可以被初始化为0,但不能被初始化为NULL。这是因为在Java中,int是原始数据类型,而NULL是引用数据类型的特殊值,不适用于原始数据类型的变量。 如果我们试图初始化一个int变量为NULL,将会得到一个编译时错误: int a = NULL; // 编译报错 相反,我们可以将int变量初始化为0: int a = 0; 在…

    Java 2023年5月19日
    00
  • Form表单上传文件(type=”file”)的使用

    下面是关于“Form表单上传文件(type=”file”)的使用”的完整攻略。 什么是表单上传文件 表单上传文件是指通过HTML表单允许用户上传文件。它使用表单元素的type属性设置为“file”,可以让用户选择一个或多个文件。 表单上传文件的实现步骤 要使用表单上传文件,需要以下步骤: 在HTML页面中创建一个表单元素,并将其类型设置为“post”,同时指…

    Java 2023年6月15日
    00
  • Java 实战项目锤炼之小区物业管理系统的实现流程

    Java 实战项目锤炼之小区物业管理系统的实现流程 项目介绍 小区物业管理系统是一个面向物业管理公司、小区业主以及业主代表的系统,可以帮助物业管理公司进行小区日常管理和业务处理,实现业务流程自动化,提升工作效率和服务质量。 该系统的主要功能包括小区信息管理、业主信息管理、房屋信息管理、缴费管理、维修管理、投诉管理等。 实现流程 1.需求分析 在该阶段,我们需…

    Java 2023年5月24日
    00
  • spring配置文件加密方法示例

    《spring配置文件加密方法示例》的完整攻略如下: 一、背景 在某些情况下,我们需要在spring配置文件中保存一些敏感信息,比如数据库连接用户名和密码等,为了保证这些信息的安全性,我们需要对这些信息进行加密处理。 二、实现方法 1. 使用spring jasypt spring jasypt是一个基于Jasypt的Spring安全加密工具库,可以对Spr…

    Java 2023年6月15日
    00
  • 使用java打印心型、圆形图案的实现代码

    以下是使用 Java 打印心型、圆形图案的实现代码攻略。 准备工作 首先,我们需要安装 Java 编程环境。可以在 Oracle 官网 下载 JDK,并按照官方文档进行安装。安装完成后,我们需要选择一款编辑器或者 IDE 来编写代码,常用的有 IntelliJ IDEA、Eclipse、VS Code等。 打印心型图案 要打印心型图案,我们可以使用嵌套循环来…

    Java 2023年5月26日
    00
  • Java实现矩阵乘法以及优化的方法实例

    Java实现矩阵乘法以及优化的方法实例 背景 矩阵乘法是线性代数中的基本操作,具体实现方法是将两个矩阵进行乘法运算,得到一个新的矩阵。在Java中,我们可以使用循环遍历的方式逐个计算矩阵元素,但是这样效率较低,需要使用优化算法来提高计算速度。 算法介绍 基本矩阵乘法 假设有两个矩阵A(mn),B(np),结果矩阵C(m*p),它们的乘法运算式如下所示: $C…

    Java 2023年5月19日
    00
  • swift4.0实现视频播放、屏幕旋转、倍速播放、手势调节及锁屏面板等功能实例

    Swift 4.0实现视频播放、屏幕旋转、倍速播放、手势调节及锁屏面板等功能实例 在iOS应用中,视频播放是一个非常常见的功能。本文将详细讲解如何使用Swift 4.0实现视频播放、屏幕旋转、倍速播放、手势调节及锁屏面板等功能。 第一步:导入AVKit和AVFoundation框架 在项目中导入AVKit和AVFoundation框架: import AVK…

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