Quickstarters
Feature Overview
如何为 Spring Boot 构建后端?
31 分
介绍 在本教程中,您将学习如何使用 back4app 为 spring boot 构建后端。 我们将逐步连接您的 spring boot 应用程序(基于 java 的 web 应用程序,利用 spring 框架)到 back4app 的基本功能——如数据库管理、云代码、rest 和 graphql api、用户身份验证、文件存储和实时查询。 通过遵循这些步骤,您将能够无缝集成 spring boot 的功能与 back4app 提供的强大 parse 平台。 利用 back4app 作为您的后端大大简化了您的数据库连接、安全配置和部署过程。 它使您免于服务器设置和手动数据库管理的复杂性,因此您可以专注于编写 spring boot 应用程序的业务逻辑。 在本教程结束时,您将拥有一个坚实、可扩展的后端,可以为您的 web 应用程序或运行在 spring web 上的 java 应用程序奠定基础,并轻松扩展到生产就绪的部署。 前提条件 要完成本指南,请确保您已准备好以下内容 一个 back4app 账户和一个新的 back4app 项目 开始使用 back4app https //www back4app com/docs/get started/new parse app 如果您没有账户,请免费注册。 一个 java 开发环境 您需要安装 java se 8 或更高版本 https //www oracle com/java/technologies/downloads/ 和 maven https //maven apache org/ 或 gradle https //gradle org/ 这对于设置您的 开发环境 至关重要。 spring boot 基础知识 熟悉创建一个 spring boot 应用程序 如果需要,请参考 spring boot 官方文档 https //spring io/projects/spring boot 以了解 spring security , 控制器、服务等。 parse/back4app 的基本知识 了解 parse 平台的工作原理是有益的。如果您是新手,请查看 back4app 的文档 https //www back4app com/docs 准备好这些前提条件可以确保顺利的教程体验。让我们开始使用 back4app 构建您的后端吧! 步骤 1 – 在 back4app 上创建新项目并连接 为什么需要这一步 创建一个新的 back4app 项目是您后端的基础。这将保存您的数据库、配置设置、安全规则,并允许您通过 parse 平台管理您的 spring boot 应用程序 数据。 创建 back4app 项目 登录到您的 back4app 账户 点击 “新应用” 在您的 back4app 控制面板上 提供一个名称 给您的项目(例如,“springboot backend tutorial”)并完成设置 完成后,您将在 back4app 控制面板中看到您的新项目 安装和配置 parse java sdk(可选) back4app 使用 parse 平台,它提供了一个 java sdk 可以与您的 spring boot 应用集成。如果您愿意,您也可以直接从您的 java 开发者 代码中进行 rest/graphql 调用。然而,使用 sdk 可以简化数据保存、查询和用户身份验证等操作 maven 依赖 (示例): \<dependency> \<groupid>com parse\</groupid> \<artifactid>parse\</artifactid> \<version>1 26 0\</version> \</dependency> 在您的 spring boot 主应用程序类或配置类中,初始化 parse @springbootapplication public class springbootbackendtutorialapplication { public static void main(string\[] args) { // initialize parse before running the application parse initialize(new parse configuration builder("your app id") server("https //parseapi back4app com/") clientkey("your client key") build() ); springapplication run(springbootbackendtutorialapplication class, args); } } 确保将 “your app id” 和 “your client key” 替换为您在 back4app 控制面板中找到的凭据。您可以在 应用设置 或 安全与密钥 下查看它们 步骤 2 – 设置数据库 1\ 创建数据模型 您的 数据库连接 是由 back4app 处理的。您可以在仪表板中创建数据模型(类),或通过 parse sdk 保存对象时让它们动态创建。为了更好的控制,请访问 back4app 仪表板并 点击 “数据库” 创建新类 (例如,“待办事项”) 添加列 (字段)如 标题 (字符串)和 已完成 (布尔值) 2\ 使用 ai 代理创建数据模型 back4app 提供了一个 ai 代理 ,可以为您生成架构 从仪表板或菜单中打开 ai 代理 用简单的语言描述您的数据模型 让 ai 代理 处理相关类和字段的创建。 3\ 使用sdk读取和写入数据 如果您已将parse java sdk添加到您的 spring framework 项目中,您可以按如下方式与类进行交互: @service public class todoservice { public parseobject createtodoitem(string title, boolean iscompleted) throws parseexception { parseobject todo = new parseobject("todo"); todo put("title", title); todo put("iscompleted", iscompleted); return todo save(); // throws parseexception if something goes wrong } public list\<parseobject> fetchtodos() throws parseexception { parsequery\<parseobject> query = parsequery getquery("todo"); return query find(); } } 4\ 使用rest api读取和写入数据 或者,您可以通过rest端点与back4app数据库进行交互: curl x post \\ h "x parse application id your application id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo 5\ 使用 graphql api 读取和写入数据 back4app 还提供了一个 graphql 端点: mutation { createtodo(input { fields { title "clean the house" iscompleted false } }) { todo { objectid title iscompleted } } } 6\ 使用实时查询(可选) 如果您的 web 应用 需要实时更新,您可以在 back4app 控制面板中启用实时查询并连接您的 spring web 应用程序。通常,您会在 java 客户端中订阅事件或使用支持实时查询的前端工具。 步骤 3 – 使用 acl 和 clp 应用安全性 简要概述 back4app 的 acls (访问控制列表)和 clps (类级权限)保护您的数据。这可以补充或增强 spring security 以进一步保护您的 java 应用程序 。 逐步指南 类级权限(clps) 在“数据库”选项卡下的“类级权限”中进行配置。 acls 在代码中或从控制面板设置对象级权限。 有关更多详细信息,请参见 应用安全指南 https //www back4app com/docs/security/parse security 。 步骤 4 – 编写云代码函数 为什么选择云代码 云代码让你将敏感的 业务逻辑 移动或保护到服务器上,在受控环境中运行。这在你想要的逻辑不应暴露在客户端或想要集成外部api时特别有用。 示例函数 parse cloud define('calculatetextlength', async (request) => { const { text } = request params; if (!text) throw new error('no text provided'); return { length text length }; }); 部署 使用 back4app cli https //www back4app com/docs/local development/parse cli 或 back4app 控制面板来部署你的代码。然后你可以通过 java sdk、rest 或 graphql 直接从 spring boot 调用该函数。 步骤 5 – 配置身份验证 用户身份验证 parse 用户类处理用户注册、登录和会话令牌。你可以通过调用 java sdk 或使用 rest 调用将其集成到你的 spring boot 应用程序 中。 注册 (java sdk 示例): public parseuser signupuser(string username, string password, string email) throws parseexception { parseuser user = new parseuser(); user setusername(username); user setpassword(password); user setemail(email); return user signup(); // returns the newly created user } 社交登录 对于 google 或 facebook 等提供商,parse 支持基于 oauth 的登录。查看 社交登录文档 https //www back4app com/docs/platform/sign in with apple 以获取更多设置细节。 步骤 6 – 处理文件存储 设置文件存储 使用 parsefile 类上传文件。或者,如果你更喜欢,可以使用 rest: // example using java sdk parsefile file = new parsefile("myimage png", filebytes); file save(); // uploads to back4app parseobject photo = new parseobject("photo"); photo put("imagefile", file); photo save(); 示例 curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type text/plain" \\ \ data binary '@myimage png' \\ https //parseapi back4app com/files/myimage png 步骤 7 – 邮件验证和密码重置 概述 为了确保你的 java 开发者 工作流中的用户账户安全,请在你的 back4app 仪表板上启用邮件验证和密码重置。 配置 在你的应用的邮件设置中启用邮件验证 设置邮件模板 以改善用户体验。 步骤 8 – 使用云作业调度任务 云作业的功能 云作业 让您自动化任务,例如定期数据清理、发送每日通知或系统范围的维护。以下是一个示例作业: parse cloud job('cleanupoldtodos', async () => { const query = new parse query('todo'); // example remove todos older than 30 days // // implement the job logic here }); 从您的 back4app 控制面板下的 服务器设置 > 背景作业 中进行调度。 步骤 9 – 集成 webhooks 定义和配置 webhooks 让您的 java 应用程序 发送或接收事件驱动的 http 请求。例如,您可以在 back4app 数据库中创建对象时通知外部服务。 转到 back4app 控制面板 > 更多 > webhooks 添加 webhook 及目标端点 设置触发器 以响应事件(创建、更新、删除) 步骤 10 – 探索 back4app 管理面板 在哪里找到它 “ back4app 管理应用 ”是一个以模型为中心的用户友好界面,供非技术团队成员查看和修改数据。转到 应用仪表板 > 更多 > 管理应用 以启用它。 选择一个子域并创建您的第一个管理员用户。然后登录以管理您的数据,而无需触及代码。 结论 恭喜您完成了与 back4app 的 spring boot 集成!您已经看到如何构建一个管理数据、身份验证、文件、实时订阅和定时作业的 spring boot 后端——所有这些都具有最小的开销。 这种强大、可扩展的方法使您能够专注于编写业务逻辑,而无需担心低级服务器或数据库细节。 您已经: 创建了一个 back4app 项目并将其连接到您的 spring 框架。 学习了如何使用类和数据模型管理数据库连接。 实现了 acl、clp、云代码函数和使用云作业的调度。 配置了文件存储、用户身份验证以及 webhook 等高级功能。 凭借这些基础知识,您的 spring boot 应用程序已准备好成长为一个具备完整 spring 安全性或更复杂数据关系的生产就绪系统。 我们鼓励您探索 back4app 的其他功能以及加速现代 web 应用程序开发的 spring boot 特性。 下一步 为生产扩展规模 优化性能,添加缓存,并在 clp 中配置高级角色。 添加更多集成 通过云代码或 webhook 连接到外部服务(支付网关、分析等)。 查阅官方文档 加深您对 back4app 的文档 https //www back4app com/docs 和高级 parse 技术的理解。 探索教程 寻找关于实时聊天、推送通知或基于位置的服务的专业教程。将它们与您的 spring boot 设置结合起来,构建前沿的 web 应用程序 。 通过利用 spring boot 和 back4app 之间的协同作用,您可以快速开发、维护和扩展您的 java 应用程序,同时保持代码库的整洁和部署过程的简单。