Struts2学习笔记(1)-入门教程

针对您提出的问题,“Struts2学习笔记(1)-入门教程”的完整攻略,我提供如下回答:

Struts2学习笔记(1)-入门教程

什么是Struts2

Struts2是一个MVC框架,它通过过滤器来检测请求,然后将请求分派给特定的Action来处理。在Action中执行完业务逻辑之后,再将结果返回给用户。

安装和配置Struts2

1.从Struts2的官网上下载安装包。

2.解压后,将Struts2 jar包和依赖的jar包放到Web项目的WEB-INF/lib目录中。

3.配置web.xml文件,添加Struts2的过滤器和监听器。

<filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
    <filter-name>struts2</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

<listener>
    <listener-class>org.apache.struts2.dispatcher.ng.listener.StrutsListener</listener-class>
</listener>

4.配置struts.xml文件,设置默认的命名空间和Action。

<struts>
    <constant name="struts.devMode" value="true" />
    <package name="default" namespace="/" extends="struts-default">
        <action name="hello" class="com.example.HelloAction">
            <result name="success">/hello.jsp</result>
        </action>
    </package>
</struts>

创建一个简单的HelloWorld程序

1.创建一个HelloAction类,继承自Struts2框架的ActionSupport类。该类表示Action中的定义。

package com.example;

import com.opensymphony.xwork2.ActionSupport;

public class HelloAction extends ActionSupport {

    public String execute(){
        return SUCCESS;
    }
}

2.创建一个hello.jsp页面,该页面表示Action中的结果。

<html>
<head>
    <title>Hello World!</title>
</head>
<body>
    <h1>Hello World!</h1>
</body>
</html>

3.在struts.xml文件中配置Action和结果,将Action映射到hello.jsp。

<struts>
    <constant name="struts.devMode" value="true" />
    <package name="default" namespace="/" extends="struts-default">
        <action name="hello" class="com.example.HelloAction">
            <result name="success">/hello.jsp</result>
        </action>
    </package>
</struts>

4.启动Tomcat服务器,访问http://localhost:8080/项目名/hello,即可看到“Hello World!”的输出。

创建一个表单提交程序

1.创建一个User类,封装表单数据。

package com.example;

public class User {

    private String name;
    private int age;

    //getter and setter
}

2.创建一个index.jsp页面,显示表单并提交数据。

<html>
<head>
    <title>Submit Form</title>
</head>
<body>
    <form action="submit" method="post">
        Name:<input type="text" name="user.name"/><br/>
        Age:<input type="text" name="user.age"/><br/>
        <input type="submit" value="Submit"/>
    </form>
</body>
</html>

3.创建一个SubmitAction类,继承自Struts2框架的ActionSupport类。该类表示Action中的定义。

package com.example;

import com.opensymphony.xwork2.ActionSupport;

public class SubmitAction extends ActionSupport {

    private User user;

    //getter and setter

    public String execute(){
        System.out.println(user.getName());
        System.out.println(user.getAge());
        return SUCCESS;
    }
}

4.在struts.xml文件中配置Action和结果,将Action映射到submit.jsp。

<struts>
    <constant name="struts.devMode" value="true" />
    <package name="default" namespace="/" extends="struts-default">
        <action name="submit" class="com.example.SubmitAction">
            <result name="success">/submit.jsp</result>
        </action>
    </package>
</struts>

5.创建一个submit.jsp页面,表示Action中的结果。

<html>
<head>
    <title>Submit Success!</title>
</head>
<body>
    <h1>Submit Success!</h1>
</body>
</html>

6.启动Tomcat服务器,访问http://localhost:8080/项目名/index.jsp,即可提交用户数据并显示成功页面。

以上是关于“Struts2学习笔记(1)-入门教程”的完整攻略,希望能对您有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Struts2学习笔记(1)-入门教程 - Python技术站

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

相关文章

  • Spring MVC 前端控制器 (DispatcherServlet)处理流程解析

    Spring MVC 前端控制器 (DispatcherServlet)处理流程解析 前端控制器 (DispatcherServlet) 简介 Spring MVC是一个基于MVC架构的Web框架,它的核心是前端控制器 (DispatcherServlet)。前端控制器是一个Servlet,它是整个Spring MVC框架的核心,负责接收所有的请求,并将请求…

    Java 2023年5月17日
    00
  • Springboot使用influxDB时序数据库的实现

    接下来我将详细讲解“Springboot使用influxDB时序数据库的实现”的完整攻略。首先需要明确的是,influxDB是一个高性能的时序数据库,专门用于处理时间序列数据。而Springboot是一个基于Spring框架的应用程序快速开发框架。 引入influxDB依赖 在Springboot项目的pom.xml文件中,添加以下依赖: <depen…

    Java 2023年5月20日
    00
  • SpringBoot详解如果通过@Value注解给静态变量注入值

    下面为您详细讲解“Spring Boot通过@Value注解给静态变量注入值”的攻略。 背景介绍 在Spring Boot开发中,我们通常使用@ConfigurationProperties注解来为Java Bean注入外部配置属性。但是,如果我们需要为静态变量注入外部属性,就需要使用@Value注解。 示例 示例1:注入基本数据类型 首先,让我们看一个简单…

    Java 2023年5月20日
    00
  • spring打包到jar包的问题解决

    下面是“spring打包到jar包的问题解决”的完整攻略: 背景介绍 使用Spring框架开发Java应用程序时,我们需要将程序打包成可执行的jar包,以方便部署和使用。但是在打包过程中可能会遇到一些问题,比如依赖jar包冲突、资源文件无法加载等等。下面介绍一些常见问题及其解决方法。 问题一:依赖jar包冲突 当我们在编写程序时使用了一些第三方jar包时,可…

    Java 2023年5月19日
    00
  • Docker构建Maven+Tomcat基础镜像的实现

    下面是 Docker 构建 Maven + Tomcat 基础镜像的实现攻略。 1. 安装 Docker 在开始之前,首先需要在本地安装 Docker。具体的安装过程可以参考 Docker 官方文档。 2. 准备 Maven + Tomcat 打包好的 war 包 在构建 Docker 镜像之前,需要准备好 Maven + Tomcat 打包好的 war 包…

    Java 2023年6月2日
    00
  • Java分布式session存储解决方案图解

    Java分布式session存储是指将Web应用中的session数据存储在多个服务器上,从而实现应用服务器之间的session数据共享,以提高系统的可靠性和可伸缩性。常用的Java分布式session存储解决方案有以下几种: 基于Tomcat的分布式session存储解决方案 1. 安装Tomcat服务器 在多个服务器上安装Tomcat应用服务器,确保To…

    Java 2023年5月20日
    00
  • MyBatis的嵌套查询解析

    MyBatis是一个非常强大的ORM框架,为开发人员提供了很多便利,其中嵌套查询是其功能之一,主要用于处理某个表或视图中某些字段需要查询其他表或视图得到对应值的情况。这里提供一个详细的攻略,帮助开发者掌握MyBatis中嵌套查询的使用。 什么是嵌套查询 嵌套查询是MyBatis中一种复杂的查询操作。它是在一个查询语句中,嵌套了另外的查询语句。在这个过程中,可…

    Java 2023年5月20日
    00
  • 详解springboot集成mybatis xml方式

    接下来我将详细讲解关于“详解Spring Boot集成MyBatis XML方式”的攻略。 1. 添加相关依赖 在pom.xml中添加以下依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-st…

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