从搭建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日

相关文章

  • ssm整合shiro使用详解

    关于“ssm整合shiro使用详解”的完整攻略,我整理了以下内容: 1. 集成SSM框架 首先,我们需要集成SSM框架。SSM框架是Spring+SpringMVC+Mybatis三个框架的集成。具体步骤如下: 1.1. 搭建Spring环境 引入Spring的maven依赖: <dependency> <groupId>org.sp…

    Java 2023年6月15日
    00
  • 对JSP(Java Server Pages)的一些理解

            JSP全名为Java Server Pages,java服务器页面。JSP是一种基于文本的程序,其特点就是HTML和Java代码共同存在!JSP是为了简化Servlet的工作出现的替代品,Servlet输出HTML非常困难,JSP就是替代Servlet输出HTML的。JSP本身就是一种Servlet。为什么我说JSP本身就是一种Servlet…

    Java 2023年4月19日
    00
  • java的Hibernate框架报错“PersistentObjectException”的原因和解决方法

    当使用Java的Hibernate框架时,可能会遇到“PersistentObjectException”错误。这个错误通常是由以下原因之一引起的: 持久化对象错误:如果持久化对象出现错误,则可能会出现此错误。在这种情况下,需要检查持久化对象的配置并进行必要的更改。 对象关系映射错误:如果对象关系映射出现错误,则可能会出现错误。在这种情况下,需要检查对象关系…

    Java 2023年5月5日
    00
  • Java加密 消息摘要算法SHA实现详解

    Java 加密之消息摘要算法SHA256 实现详解 在这篇文章中,我们将详细介绍使用 SHA256 算法实现消息摘要的 Java 编程。本文将介绍什么是消息摘要算法、SHA256 算法的原理和用法,以及如何在 Java 中使用 SHA256 实现消息摘要。本文还提供了两个示例来演示如何使用 SHA256 算法。 什么是消息摘要算法? 消息摘要算法是简单的单向…

    Java 2023年5月19日
    00
  • Spring Boot 添加MySQL数据库及JPA实例

    下面是详细的“Spring Boot 添加MySQL数据库及JPA实例”的攻略。 1. 准备工作 安装Java和MySQL 新建Spring Boot项目(可使用IntelliJ IDEA等集成开发环境) 2. 添加MySQL依赖 在pom.xml文件中添加mysql-connector-java和spring-boot-starter-data-jpa依赖…

    Java 2023年5月20日
    00
  • Java Mybatis框架由浅入深全解析中篇

    Java Mybatis框架由浅入深全解析中篇 本文将从Mybatis框架的基本配置、映射器、插件、缓存、批处理等方面进行全面介绍,以帮助读者更好地理解和使用Mybatis框架。 基本配置 Mybatis框架的基本配置包括数据库信息、连接池、日志等。这些配置都可以在mybatis-config.xml中进行设置。下面是一个基本的mybatis-config.…

    Java 2023年5月20日
    00
  • springboot 整合邮件发送功能

    整合邮件发送功能是 Spring Boot 中常见的应用场景之一。下面是整合邮件发送功能的完整攻略: 步骤一:添加邮件依赖 在 pom.xml 文件中添加以下依赖,在这个依赖中包含了spring-boot-starter-mail的所有依赖。 <dependency> <groupId>org.springframework.boot…

    Java 2023年6月15日
    00
  • jsp 不支持EL表达式,解决办法

    针对“jsp不支持EL表达式,解决办法”的问题,整理了如下的完整攻略: 问题描述 JSP是一种Java Web应用程序的开发技术,使用JSP可以更方便地与HTML, CSS, JavaScript等前端技术协同开发;而EL表达式是JSP页面中经常使用的一种表达式语言,但是有时候我们会发现jsp页面不支持EL表达式,例如EL表达式的语法无法正确解析,页面中无法…

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