📜  Spring - 带有示例的多动作控制器

📅  最后修改于: 2022-05-13 01:54:23.960000             🧑  作者: Mango

Spring - 带有示例的多动作控制器

Spring 是最流行的Java EE 框架之一。它是一个开源轻量级框架,允许Java EE 7 开发人员构建简单、可靠且可扩展的企业应用程序。该框架主要侧重于提供各种方法来帮助您管理业务对象。与Java数据库连接 (JDBC)、JavaServer Pages (JSP) 和Java Servlet 等经典Java框架和应用程序编程接口 (API) 相比,它使 Web 应用程序的开发更加容易。

Multi-Action Controller:根据Spring官方文档,MultiActionController是一个Controller实现,允许同一个类处理多种请求类型。此类的子类可以使用表单的方法处理几种不同类型的请求。

那么现在让我们通过一个 Spring MVC 项目示例来理解这一行。

实施:项目要求如下:

  1. Eclipse(EE版)/STS IDE
  2. 弹簧 JAR 文件
  3. Tomcat Apache 最新版本

设置项目

第 1 步:在您的 STS IDE 中创建一个动态 Web 项目。您可以参考这篇文章在 STS中创建动态 Web 项目:如何在 Spring Tool Suite 中创建动态 Web 项目?

第 2 步:下载 spring JARs 文件并转到src > main > webapp > WEB-INF > lib文件夹并通过这些 JAR 文件。

第 3 步:请参阅本文配置 Apache Tomcat 服务器并使用您的应用程序配置 Tomcat 服务器。现在我们准备好了。

配置 Dispatcher Servlet

请参考这篇文章什么是 Spring 中的 Dispatcher Servlet?并阅读有关 Dispatcher Servlet 的更多信息,这是一个非常重要的概念。现在我们将使用我们的 Spring MVC 应用程序配置 Dispatcher Servlet。

第 4 步:转到src > main > webapp > WEB-INF > web.xml文件, web.xml文件的完整代码如下所示:

第 5 步:现在转到src > main > webapp > WEB-INF并创建一个 XML 文件。实际上,这是一个 Spring 配置文件,如 beans.xml 文件。并且文件名必须是这种格式

YourServletName-servlet.xml  

例如,对于这个项目,文件的名称必须是

frontcontroller-dispatcher-servlet.xml

因此,您可以创建一个 Spring 配置文件,也可以只创建一个简单的 XML 文件,在该文件中添加以下代码行。

示例: frontcontroller-dispatcher-servlet.xml

XML


 


Java
// Java Program to Create Multiple Handler Methods
// Inside Single Controller Class
 
package com.student.controllers;
 
// Importing required classes
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
 
// Annotation
@Controller
 
// Class
public class DemoController {
 
    @ResponseBody
    @RequestMapping("/hello")
 
    public String helloWorld()
    {
        return "Hello World!";
    }
 
    @ResponseBody
    @RequestMapping("/geeksforgeeks")
 
    public String welcomeGfgMessage()
    {
        return "Welcome to GeeksforGeeks";
    }
 
    @ResponseBody
    @RequestMapping("/happycoding")
 
    public String happyCodingMesage()
    {
        return "Happy Coding Guyz!";
    }
}


XML


 
    
 



创建您的多动作控制器

第 6 步:现在,让我们创建一些控制器。转到 src/main/ Java并根据您的选择创建一个新的控制器包(例如 com.student.controllers)。并在其中创建一个Java类并将该类命名为 DemoController。现在如何告诉 Spring 这是我们的控制器类。所以我们要告诉 Spring 的方法是用 @Controller 注释标记它。

@Controller
public class DemoController {}

现在让我们在这个单个控制器类中创建一些多个处理程序方法。所以我们可以写这样的东西。

例子

Java

// Java Program to Create Multiple Handler Methods
// Inside Single Controller Class
 
package com.student.controllers;
 
// Importing required classes
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
 
// Annotation
@Controller
 
// Class
public class DemoController {
 
    @ResponseBody
    @RequestMapping("/hello")
 
    public String helloWorld()
    {
        return "Hello World!";
    }
 
    @ResponseBody
    @RequestMapping("/geeksforgeeks")
 
    public String welcomeGfgMessage()
    {
        return "Welcome to GeeksforGeeks";
    }
 
    @ResponseBody
    @RequestMapping("/happycoding")
 
    public String happyCodingMesage()
    {
        return "Happy Coding Guyz!";
    }
}


在一个控制器类中,spring 允许我们这样做。所以我们可以说 MultiActionController 是一个 Controller 实现,它允许同一个类处理多个请求类型。

运行多动作控制器

第 7 步:在运行应用程序之前,在frontcontroller-dispatcher-servlet.xml文件中添加以下行。

示例: frontcontroller-dispatcher-servlet.xml

XML



 
    
 


第 8 步:要运行您的 Spring MVC 应用程序,请右键单击您的项目 > 运行方式 > 在服务器上运行并运行您的应用程序,如下图所示:

之后使用以下 URL 运行您的控制器,如下图所示。图片中提到了所有其他细节。要运行“ /hello ”请求,请点击以下 URL

http://localhost:8080/myfirst-mvc-project/student.com/hello

网页中的输出:

http://localhost:8080/myfirst-mvc-project/student.com/geeksforgeeks

最后,为了运行“/happycoding ”请求,点击以下 URL:

Welcome to GeeksforGeeks

网页中的输出:

http://localhost:8080/myfirst-mvc-project/student.com/happycoding