使用完全 REST Web 服务将数据写入数据库

2023-12-26

如何创建 REST Web 服务来将一行写入数据库表中。使用以下场景:

该表称为Customer- 这 要插入到行中的数据将 是姓名、地址、电话 号码、电子邮件。

我认为用 Java 或 C# 来描述整个事情是不可能的,我也不会想到这一点,但在我准备编码时,我的脑海中突然浮现出以下问题:

  • URI 的外观(例如,如果您使用此 URL -http://www.example.com/ http://www.example.com/)?
  • HTTP 信封中会包含哪些信息?
  • 以这种方式写入数据库时​​我会使用 POST 吗?
  • 我是否使用资源来存储客户端发布的数据?如果数据无论如何都要写入数据库,这还有必要吗?
  • 当服务器接收到要写入数据库的数据时 - 我如何将其物理插入到数据库中 - 我是否调用服务器上的某些方法来实际写入数据(在Java中)? -这似乎不符合真正的 REST 架构——避免 RPC 调用。
  • 我是否应该费心写入数据库——我是否应该将数据存储为资源?

正如你所看到的,我需要澄清一些问题。非常感谢任何帮助。


首先,我既不是 java 也不是 c# 专家,我不太清楚这些语言需要什么方法来支持 REST 设计,但总的来说:

  1. http://www.example.com/customers http://www.example.com/customers- 客户是资源的集合,您想要向该集合添加新资源

  2. 这取决于多种因素 - 您可能应该设置内容类型标头(根据您发送表示的数据格式)并根据需要设置一些身份验证标头。

  3. 是的,您始终使用 POST 在资源集合中创建新条目。

  4. 说实话,我不太明白这个问题。 “立即将数据写入数据库”是什么意思?

  5. REST 主要是服务器和客户端之间的一种通信方式。它没有说明您应该如何处理使用它收到的数据。现代 Web 方法(MVC 风格框架)解决这个问题的常用方法是将每个 REST 操作路由到某个类(通常是控制器实例)的方法,在该方法中处理接收到的参数(例如将它们保存到数据库)并生成要发回的响应。

有关 REST 的非常简短且非常清晰的介绍,请查看此内容短视频 http://www.youtube.com/watch?v=YCcAE2SCQ6k.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用完全 REST Web 服务将数据写入数据库 的相关文章

  • Android中不同线程的数据库访问

    我有一个在 AsyncTasks 中从互联网下载数据的服务 它解析数据并将其存储在数据库中 该服务持续运行 当服务写入数据库时 活动会尝试从数据库中读取更改 我有一个数据库助手 有多种写入和读取方法 这会导致问题吗 可能尝试从两个不同的线程
  • Android:打开和关闭SQLite数据库

    我正在开发Android应用程序 我经常在其中访问本地数据库 该数据库可以从不同的主题访问 因此我遇到了数据库的协调问题 我使用以下open and close method public void open mDb mDbHelper g
  • 如何解决 ServiceConstructionException:找不到服务的定义?

    我有一个简单的应用程序 其中包含一个使用以下命令创建的 Web 服务Apache CXF 当我运行服务器和客户端时 该应用程序可以工作 如Java应用程序 当我尝试访问该应用程序时 services映射的URLweb xml Tomcat给
  • 最适合“正在进行的作业”的 HTTP 状态代码

    向客户端提供的最合适的 HTTP 状态代码是什么 表示 您的请求很好 但仍在进行中 请稍后在完全相同的位置回来查看 例如 假设客户端提交初始请求以启动繁重的查询 服务器立即返回一个 URL 客户端可以定期轮询该 URL 以获取结果 如果客户
  • 数据聚合和缓存:如何按时间间隔快速绘制大型时间序列数据集的图表

    我有一个巨大的时间序列数据集 我想绘制图表 时间序列可以追溯到 5 年前 从后端的角度来看 以各种分辨率 间隔 显示这些数据的常用方法是什么 本质上我想绘制这样的数据图表 https bitcoinwisdom com markets bi
  • 端点按资源 swagger 注释分组?

    我正在使用 Spring 进行 REST API 开发 我有一些 API 其中有很多端点 当我打开 swagger ui 时 它看起来很拥挤 我刚刚读过this https swagger io docs specification gro
  • 可以重复应用并产生相同结果的数据库操作吗?

    我现在一片空白 或者像有些人说的那样 正在经历一个高级时刻 我知道这个概念有一个正式的定义和名称 其中在数据库中运行的数据库操作 存储过程 如果重复运行将产生相同的结果 它属于数学家的自反 对称 传递等类型 您的意思是 确定性 吗 如果使用
  • Django REST Framework:何时创建超链接资源以及何时创建嵌套资源?如何发布嵌套资源?

    我正在使用 Django REST 框架构建 REST Web API 事情进展顺利 但我偶然发现了嵌套资源的问题 起初 REST API 中的所有关系都是超链接的 例如 一篇文章看起来像这样 path http api myproject
  • 从对象定义生成数据库表

    我知道有几种 自动 方法可以创建数据访问层来操作现有数据库 LINQ to SQL Hibernate 等 但我有点厌倦了 我相信应该有更好的做事方式 比如 在 Visio 中创建 更改表 使用 Visio 的 更新数据库 创建 更改数据库
  • AWS RDS MySql - 如何在设置“公开可用”后允许访问

    刚刚使用默认设置和用户 密码创建了新的 AWS RDS MySql 实例 我也将其设置为publicly available并在此过程中创建新的 VPC 目前无法从我的笔记本电脑连接到此 RDS mysql h endpoint u myu
  • 在android中创建SQLite数据库

    我想在我的应用程序中创建一个 SQLite 数据库 其中包含三个表 我将向表中添加数据并稍后使用它们 但我喜欢保留数据库 就好像第一次安装应用程序时它会检查数据库是否存在 如果存在则更新它 否则如果不存在则创建一个新数据库 此外 我正在制作
  • jersey 2.2:ContainerResponseFilter 和 ContainerRequestFilter 永远不会被执行

    按照泽西岛网站上的入门指南进行操作 我执行了以下构建命令 mvn archetype generate DarchetypeArtifactId jersey quickstart grizzly2 DarchetypeGroupId or
  • Web 服务响应包含无效的 XML 字符

    我的应用程序正在连接到 Web 服务 rpc encoded 我使用的是 Axis 1 4 当 Web 服务发送响应时 它会发送一个无效字符 然后发送一个异常 http xml apache org axis stackTrace org
  • 将数据库与 Clojure 结合使用

    有哪些使用 Clojure 数据库的方法 我从 Clojure 知道你可以用 Java 做任何事情 但这意味着我最终可能会使用一些过于复杂的东西 比如 Hibernate 这与 Clojure 的简单性相冲突 有什么建议或意见吗 Cloju
  • ALTER TABLE 语句与 FOREIGN KEY 约束冲突

    为什么要添加外键tblDomare表导致此错误 ALTER TABLE 语句与 FOREIGN KEY 约束 FK tblDomare PersN 5F7E2DAC 冲突 冲突发生在数据库 almu0004 表 dbo tblBana 列
  • 使用 Flyway 和 Hibernate 的 hbm2ddl 在应用程序的生命周期中管理数据库模式

    我正在开发 Spring Hibernate MySql 应用程序 该应用程序尚未投入生产 我目前使用 Hibernatehbm2ddl该功能对于管理域上的更改非常方便 我也打算用Flyway用于数据库迁移 在未来的某个时候 该应用程序将首
  • SQLite 仅当值不为空时更新列

    Query UPDATE item table SET field1 field1 spanish field2 field2 spanish 问题 我怎样才能更新field1 with field1 spanish ONLY if fie
  • 如何使用 Wix 运行 sql 脚本创建数据库

    我在使用 Wix 创建数据库时遇到问题 我能找到的示例 参见下面的链接 都是首先使用 wix 创建数据库并运行创建表 sql 脚本 问题是我需要将 wix 设置为使用 CREATE DATABASE 运行 sql 脚本来创建数据库和表 而不
  • 使用 PHP PayPal REST API 退款?

    我正在开发一个集成到 PayPal 的 REST API 中的 PHP 应用程序 我正确处理了事务并将事务 ID 保存到 MySQL 数据库中 我现在正在尝试退款 但无法让它停止给出 传入 JSON 请求未映射到 API 请求 错误 有人对
  • ASMX Web 服务 - 返回带有属性的用户定义的类

    嘿 我正在尝试从 Web 方法返回用户定义的类 该类具有属性和 或方法 给出以下网络方法 WebMethod public List

随机推荐

  • 如何解决 SSIS 包中 OLE DB 目标中的非空约束?

    I m new to SSIS Package I want to transfer data from source to destination database which has different table structures
  • 为单个用户设置默认 PASE IBM i shell

    The PASE http www 01 ibm com support knowledgecenter ssw ibm i 72 rzalf rzalfintro htm lang en环境默认提供并使用 korn shell 这ibmp
  • Phonegap Android 无法上网

    我正在 Phonegap 中编写我的第一个应用程序 并且我一直在 Android 设备上对其进行测试 我相信我已授予适当的许可
  • C++ 构造函数/析构函数继承

    编辑 答案摘要 下面B是A的子类 这是一个术语问题 ctors 和 dtors 是not继承 从某种意义上说 B 的 ctor dtor 将not借用A的接口 一个类至少有一个构造函数 并且只有一个析构函数 Constructors B 不
  • OpenCV (c++) 多通道元素访问

    我正在尝试使用 新 OpenCV 2 0 c 版本 但其他一切都像简单的 C 版本一样 我在更改图像中的值时遇到一些问题 该图像是 CV 8UC3 for int i 0 i
  • 带 keycloak 的 Flask-OIDC - oidc_callback 默认回调不起作用

    我正在尝试在一个简单的 Flask 应用程序中使用 Flask oidc 以便通过 keycloak 添加身份验证 但是 一旦我使用有效凭据登录 它就会返回到不存在的 oidc callback Flask 日志显示了很多带有 302 结果
  • 多重继承的接口是否冗余?

    这不是关于抽象类和接口之间差异的另一个问题 因此请在投票关闭它之前三思而后行 我知道接口对于那些不支持多重继承的 OOP 语言 例如 C 和 Java 至关重要 但那些呢with多重继承 在具有多重继承的语言中 接口的概念 作为特定的语言功
  • 通过模板参数给定其长度,在编译时生成相同类型的 std::tuple

    在 C 中 如何实现带有指示元组长度的 int 模板参数的函数并生成具有该长度的 std tuple E g func lt 2 gt returns std tuple
  • 闪亮应用程序的 renderDataTable 中的列宽度,无需拉伸

    我想要一个数据表 及其所有排名 搜索和页面功能 它不会完全延伸到整个页面 并导致每列中有大量空白 理想情况下 列宽类似于 wrap 样式renderTable 我知道我可以修复相对列宽 但是 我的表将根据所选输入动态更新不同数量的列 我希望
  • 使用 FMOD 将输出保存到磁盘

    我正在使用 FMOD 播放一些声音 我想将生成的混音保存到磁盘 我一直在尝试 system gt recordStart 0 sound true 路径 但这保存了设备的麦克风输入 以某种方式 我想将扬声器输出重定向到磁盘 谢谢 Marc
  • XML 架构 - “此上下文中不支持元素”

    我的代码中的最后内容有问题 它说 http www w3 org 2001 XMLSchema http www w3 org 2001 XMLSchema 在这种情况下不支持 我该如何解决这个问题 问题截图
  • d3:Multi-Foci Force关键代码组件理解

    多焦点力的真正魔力就在这里完成 function tick e var k 1 e alpha Push nodes toward their designated focus nodes forEach function o i o y
  • 使用 Java JSch 确定来自 SFTP 服务器的最新文件

    有没有办法使用 Java JSch 确定 Unix SFTP 服务器上最新文件的名称 我想将最新文件从服务器复制到本地计算机 我已经有一个工作代码了 但我无法识别最新的文件 该文件夹包含许多以下格式的文件 Some Report dd MM
  • ios7 CameraPickerController 相机中的图像被冻结

    我有一个简单的相机视图控制器代码 UIImagePickerController picker new UIImagePickerController picker PrefersStatusBarHidden picker SourceT
  • 如何使用 JSF 显示/隐藏组件?

    如何使用 JSF 显示 隐藏组件 我目前正在尝试在 javascript 的帮助下做同样的事情 但没有成功 我无法使用任何第三方库 谢谢 阿比 你实际上可以做到这一点withoutJavaScript 仅使用 JSFrendered属性 通
  • 两个单精度浮点向量的点积在 CUDA 内核中与在主机上产生不同的结果

    在调试一些 CUDA 代码时 我使用以下方法与等效的 CPU 代码进行比较printf陈述 并注意到在某些情况下我的结果有所不同 它们在任何一个平台上都不一定是错误的 因为它们在浮点舍入误差之内 但我仍然有兴趣知道是什么导致了这种差异 我能
  • 如何禁用 Kendo UI 调度程序中的事件?我只是将其设为只读

    如何禁用kendo UI调度程序中的事件 我从官网示例中研究了示例 发现事件中的所有单元格都有双击事件来创建和删除以及其他事件 但现在我只是用它来显示结果 那么如何阻止所有的创建 删除 编辑事件呢 Use the editable配置选项
  • 获取连接的条带账户的账户ID

    当我运行测试以连接用户通过我的应用程序接受付款时 我将需要帐户 ID 来向他们的帐户收费 Stripe Token create array customer gt CUSTOMER ID card gt CARD ID array str
  • Rails & Devise:如何验证特定用户?

    我第一次将 Devise 与 Rails 结合使用 但遇到了一件事 我使用了提供的authenticate user 我的用户控制器中的方法来限制对页面的访问 如下所示 before filter authenticate user onl
  • 使用完全 REST Web 服务将数据写入数据库

    如何创建 REST Web 服务来将一行写入数据库表中 使用以下场景 该表称为Customer 这 要插入到行中的数据将 是姓名 地址 电话 号码 电子邮件 我认为用 Java 或 C 来描述整个事情是不可能的 我也不会想到这一点 但在我准