Spark Java

2025 年 5 月 12 日 | 阅读 6 分钟

什么是 Spark Java?

Spark 是一个 Java 微框架,允许您快速创建 Java 8 的 Web 应用程序。Spark 是一个轻量级且简单的 Java Web 框架,专为快速开发而设计。它是受流行的 Ruby 微框架 Sinatra 的启发而创建的。

Spark 大量使用了 Java 8 的 lambda 表达式,这使得 Spark 应用程序的冗余代码更少。与其他 Java Web 框架不同,它不怎么依赖 XML 文件或注解。

开始使用 Spark Java

步骤 1:创建一个 Maven 项目,并将依赖项添加到 pom.xml 文件中

步骤 2:复制以下代码。

步骤 3:在 Web 浏览器中输入以下 URL 以查看结果。

启动服务器

当我们执行需要启动服务器的操作时(例如声明一个路由或设置端口),服务器会自动启动。

我们也可以通过输入 init() 来手动启动服务器。

如果初始化失败,我们可以描述应该发生什么

日志记录和关闭是默认行为

停止服务器

调用 stop() 方法时,服务器会停止,所有路由都会被清理。

路由

Spark 应用程序中有许多路由。路由是 URL 模式和 Java 处理程序之间的映射。

路由有三个部分

  1. 一个动词 - get, post, put, delete, head, trace, connect, and options
  2. 一个路径 - 例如 /first 或 /hello/:name
  3. 一个回调函数 - (request, response) ->{ }

定义路由的顺序决定了它们的匹配方式。请求会被转发到第一个匹配请求的路由。

为了保持良好的可读性,请始终静态导入 Spark 方法

可以使用请求对象上的 params() 方法来检索路由模式中的命名参数

路由模式中也可以使用 Splat(或通配符)参数。可以使用请求对象上的 splat() 方法来检索这些参数

路由的取消映射

可以使用 'unmap' 函数来取消路由的映射

路径分组

如果有很多路由,将它们分成组会很有用。这可以通过调用 path() 方法来实现。该方法接受一个字符串前缀,并返回一个作用域,用于创建路由和过滤器(或嵌套路径)

请求

请求参数提供以下信息和功能

响应

响应参数提供以下信息和功能

查询映射

我们可以使用查询映射根据前缀将参数分组到一个映射中。这使我们能够向用户映射添加两个参数,例如 user[name] 和 user[age]。

Cookies

会话

每个请求都可以访问服务器端会话,该会话通过以下方法提供

中断

在过滤器或路由中使用 halt() 方法可以立即停止一个请求

注意:halt() 不应在异常映射器 (exception-mapper) 中使用。

过滤器

Before-filters 在每个请求之前进行检查,并且可以读取和修改请求和响应。

使用 halt() 方法可以停止程序的执行

After-filters 在每个请求之后进行检查,并且可以读取请求并读取/修改响应

在 after-filters 之后,会检查 after-after-filters。可以将其视为“finally”块。

过滤器可以选择性地接受一个模式,这意味着它们仅在请求路径与其匹配时才会被评估

重定向

通过响应上的 redirect 方法,我们可以强制浏览器重定向

也可以通过特定的 HTTP 3XX 状态码触发浏览器重定向

重定向 API

还有一个重定向便捷 API,可以在不使用响应的情况下使用