java中struts配置

yizhihongxing

下面是关于Java中Struts配置的详细攻略。

Struts框架的基本介绍

Apache Struts是一个基于Java EE的Web应用程序开发框架,它采用了Model-View-Controller(MVC)的架构模式,并通过多种标准技术来实现Web应用的开发,如Java Servlet、JavaBean、XML、JSP和Java的反射机制等。Struts框架的开发主要涉及Struts配置文件的编写,其中最基本的配置文件就是struts-config.xml。这个配置文件中主要包含一个或多个action元素,每个action元素通常会对应到应用中的一个页面或一个请求,并指定一组处理此请求的类和方法。

Struts框架的环境准备

首先,我们需要在本地机器上安装好Java开发环境和Apache Tomcat服务器环境,这里我们以Tomcat作为Web容器。其次,下面是一些必要的Struts框架的jar包:

  • struts.jar
  • struts-el.jar
  • commons-beanutils.jar
  • commons-digester.jar
  • commons-collections.jar
  • commons-chain.jar
  • xwork-core.jar
  • ognl.jar
  • freemarker.jar

在项目中增加这些jar包依赖:

<dependency>
    <groupId>org.apache.struts</groupId>
    <artifactId>struts-core</artifactId>
    <version>1.3.8</version>
</dependency>

其中,1.3.8是Struts框架的版本号。

配置struts-config.xml

下面是一个简单的Struts配置文件示例:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC 
  "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN" 
  "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
  <form-beans>
    <form-bean name="loginForm" type="com.example.struts.action.LoginActionForm"/>
  </form-beans>
  <global-exceptions>
    <exception
      key="error.db.exception"
      type="java.sql.SQLException"
      path="/error/error.jsp"/>
    <exception
      key="error.generic.exception"
      type="java.lang.Exception"
      path="/error/error.jsp"/>
  </global-exceptions>
  <action-mappings>
    <action
      path="/login"
      name="loginForm"
      type="com.example.struts.action.LoginAction"
      validate="true"
      input="/login.jsp"
      scope="request">
      <forward name="success" path="/welcome.jsp"/>
      <forward name="failure" path="/login.jsp"/>
    </action>
  </action-mappings>
</struts-config>

在这个配置文件中,我们定义了一个名为“login”的action,定义了一个名为“loginForm”的formBean,也定义了几个全局异常。当名字为“login”的请求被发送时,它会跳转至类com.example.struts.action.LoginAction,并在LoginForm中进行输入验证,验证成功将跳转至/welcome.jsp,否则跳转至/login.jsp。

下面是另一个简单的示例:

<action
    name="loginForm"
    path="/login"
    scope="request"
    validate="true"
    input="/login.jsp"
    type="com.example.struts.LoginAction"
    parameter="execute">
    <forward name="success" path="/welcome.jsp" />
    <forward name="failure" path="/login.jsp"/>
</action>

该示例也是定一个名为“login”的action,它将请求发送到loginForm实例上,并对用户输入进行验证。如果验证成功,则跳转至/welcome.jsp;如果验证失败,则返回/login.jsp

配置Action类

在Struts中,Action类是用来处理请求的具体实现,它通常继承org.apache.struts.action.Action,并实现execute方法。

下面是一个简单的Action类:

package com.example.struts.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.example.struts.actionform.LoginActionForm;

public class LoginAction extends org.apache.struts.action.Action{
    public ActionForward execute(
        ActionMapping mapping,
        ActionForm form,
        HttpServletRequest request,
        HttpServletResponse response) throws Exception {

        LoginActionForm loginForm = (LoginActionForm) form;
        String username = loginForm.getUsername();
        String password = loginForm.getPassword();
        if ("admin".equals(username) && "password".equals(password)) {
            return mapping.findForward("success");
        } else {
            return mapping.findForward("failure");
        }
    }
}

该简单示例中,我们对用户输入进行了简单的检查,若用户名为“admin”,密码为“password”,则跳转至“success”,否则跳转至“failure”。

另一个简单的示例:

package com.example.struts;

import com.opensymphony.xwork2.ActionSupport;

public class LoginAction extends ActionSupport{
    private String username;
    private String password;

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

    public void setUsername(String username){
        this.username = username;
    }
    public void setPassword(String password){
        this.password = password;
    }
    public String getUsername(){
        return username;
    }
    public String getPassword(){
        return password;
    }
}

结论

这就是关于Java中Struts配置的详细攻略,希望对你有帮助。在实际应用中,我们可能需要根据具体需求进行更加复杂的配置。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java中struts配置 - Python技术站

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

相关文章

  • 浅谈MyBatis-plus入门使用

    浅谈MyBatis-plus入门使用 MyBatis-plus(以下简称MP)是一个为MyBatis框架提供增强功能的第三方库,旨在简化MyBatis的开发。本文将深入浅出地探讨MP的入门使用。 安装 将以下依赖添加到Maven或Gradle项目中: <!– MyBatis-plus –> <dependency> <gro…

    Java 2023年5月19日
    00
  • Window下安装JDK1.8+Tomcat9.0.27+Mysql5.7.28的教程图解

    下面我将详细讲解“Window下安装JDK1.8+Tomcat9.0.27+Mysql5.7.28的教程图解”的完整攻略。 前置要求 在安装这三个软件之前,需要先确定你的电脑已经满足以下几个前置要求: 操作系统:Windows 7/8/10 硬件配置:2GB 以上内存,至少 3GB 的硬盘空间 网络环境:需要能够联网,方便软件下载和安装 JDK1.8 的安装…

    Java 2023年6月2日
    00
  • 深入解析Java中ThreadLocal线程类的作用和用法

    深入解析 Java 中 ThreadLocal 线程类的作用和用法 什么是 ThreadLocal Java 中的 ThreadLocal 是一个线程级别的变量,它是一个简单的线程安全机制,可以用于解决多线程中的并发问题。通俗地说,ThreadLocal 就是一个存放数据的盒子,每个线程有一个专属的盒子,不同线程之间互不干扰。 ThreadLocal 的使用…

    Java 2023年5月20日
    00
  • Java中的NullPointerException如何避免?

    Java中的NullPointerException(空指针异常)是一种常见的运行时异常,在处理对象时,如果操作了空对象,就有可能出现NullPointerException,导致程序崩溃。为了避免NullPointerException出现,我们需要注意以下几点: 1. 空指针判断 在操作可能会出现空指针异常的对象之前,要进行空指针判断以避免程序崩溃。可以…

    Java 2023年4月27日
    00
  • Java 将一个字符重复n遍过程详解

    当我们需要将一个字符重复n遍时,我们可以使用Java的String类提供的重复方法repeat()。 该方法接受一个参数n,表示需要将字符重复的次数,然后返回一个新的字符串,其中指定的字符被重复n次。下面是使用repeat()方法的基本语法: String repeatedString = "a".repeat(n); 该语句将创建一个由…

    Java 2023年5月27日
    00
  • spring boot高并发下耗时操作的实现方法

    一、介绍 在高并发的场景下,应用程序的性能是至关重要的,耗时的操作(如大量IO操作或者复杂的计算任务)可能会导致整个系统的瓶颈。本文将介绍一些实现方法,来处理在Spring Boot应用程序中高并发下的耗时操作。 二、异步非阻塞处理 异步非阻塞处理是通过将请求和相应分离,将耗时操作放在一个线程中执行,从而提高并发处理能力。在Spring Boot中,可以通过…

    Java 2023年5月20日
    00
  • JPype实现在python中调用JAVA的实例

    JPype是一个开源的Python模块,它可以让Python程序调用Java类。使用JPype可以方便地使用Java已有的库,从而加速Python在特定场景下的运行效率。下面是在Python中使用JPype调用Java实例的详细攻略: 1. 安装JPype 安装JPype模块前,需要Python和Java环境同时存在于计算机中。如果没有安装Java环境,可以…

    Java 2023年6月15日
    00
  • 图解Eclipse j2ee开发环境的搭建过程

    图解Eclipse J2EE开发环境的搭建过程 简介 本教程介绍如何使用Eclipse IDE搭建J2EE开发环境。J2EE是Java 2 Enterprise Edition的缩写,是Java平台上使用最广泛的企业级应用开发技术之一。 步骤 第一步:安装Java JDK 确定已经安装Java JDK,否则需要先下载并安装Java JDK。可访问官方网站Ja…

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