首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

当我尝试实现hateos时,我得到了一个编译时错误,它没有显示methodOn方法

当你尝试实现HATEOAS时,遇到编译时错误没有显示methodOn方法。HATEOAS(Hypermedia as the Engine of Application State)是一种RESTful API设计原则,通过在API响应中包含超媒体链接,使得客户端能够自动发现和导航到相关资源。

在Java中,当你尝试使用Spring HATEOAS库来实现HATEOAS时,可能会遇到编译时错误,没有显示methodOn方法。这是因为methodOn方法是Spring HATEOAS库中的一个工具方法,用于创建一个代理对象,以便在编译时解析方法引用。

要解决这个问题,首先确保你的项目中已经正确引入了Spring HATEOAS库的依赖。例如,如果你使用Maven作为构建工具,可以在pom.xml文件中添加以下依赖:

代码语言:txt
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-hateoas</artifactId>
</dependency>

接下来,检查你的代码是否正确使用了methodOn方法。methodOn方法的使用方式如下所示:

代码语言:txt
复制
Link link = linkTo(methodOn(YourController.class).yourMethod()).withSelfRel();

在这个示例中,YourController是你的控制器类,yourMethod是你的方法。methodOn方法接受一个类引用和方法引用,返回一个代理对象,以便在编译时解析方法引用。

如果你仍然遇到编译时错误没有显示methodOn方法,可能是由于以下原因之一:

  1. 你的IDE没有正确识别或导入Spring HATEOAS库。尝试重新导入库或使用其他IDE。
  2. 你的项目配置有误。确保你的项目正确配置了Spring HATEOAS库,并且没有冲突的依赖项。
  3. 你的代码中存在其他错误。检查你的代码是否存在其他语法或逻辑错误。

总之,通过正确引入Spring HATEOAS库的依赖,并正确使用methodOn方法,你应该能够成功实现HATEOAS,并解决编译时错误没有显示methodOn方法的问题。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云产品:https://cloud.tencent.com/product
  • 云计算产品:https://cloud.tencent.com/product/cvm
  • 人工智能产品:https://cloud.tencent.com/product/ai
  • 数据库产品:https://cloud.tencent.com/product/cdb
  • 云原生产品:https://cloud.tencent.com/product/tke
  • 存储产品:https://cloud.tencent.com/product/cos
  • 区块链产品:https://cloud.tencent.com/product/tbaas
  • 元宇宙产品:https://cloud.tencent.com/product/uec
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

2022就业季|Spring认证教你,如何使用 Spring 构建 REST 服务(五)

包括一个description字段以及一个status字段。从客户提交订单到完成或取消订单,订单必须经历一系列状态转换。...向客户端提供此类数据,一件很自然的事情是让客户端根据此有效负载决定它可以做什么。但那是错误的。当您在此流程中引入新状态时会发生什么?UI 上各种按钮的放置可能是错误的。...换句话说,当CANCEL和COMPLETE是有效操作,将它们动态添加到链接列表中。客户端只需要在链接存在向用户显示相应的按钮。...如果它不是一个有效的状态,它会返回一个RFC-7807 Problem,一个支持超媒体的错误容器。如果转换确实有效,则将 转换Order为CANCELLED。...第一个订单,即COMPLETED只有导航链接。未显示状态转换链接。第二个订单,即 IN_PROGRESS还具有取消链接和完整链接。

90120
  • 为什么比起 IntelliJ IDEA,更喜欢 Eclipse…

    这些无法用糖衣包裹的“炮弹”是: 1、项目不是自动构建的(默认情况下) 项目不是自动构建的(默认情况下),所以你可以以编译错误结束,直到你打开一个编译文件或者运行一个构建。...知道的计算机需要升级,但这不是重点——没有“构建在变化上”对第一次尝试IDEA的来说是一个巨大的“惊喜”。 最近在Twitter上抱怨说,这居然“是一个功能”。...另外,Maven / Gradle依赖关系的改变可能会引入你无法看到的编译问题。这根本不是一个合理的默认值,并且认为性能问题是仍然默认的唯一原因。这使得体验变得更糟。...所以每当你需要走出你的主要项目,你会启动另一个屏幕。除了糟糕的可用性之外,的内存加倍,痛苦加倍。 3、说起内存,IDE似乎比Eclipse更耗费内存。...9、几年前,当我将它用于Scala,那个项目从未真正编译过。但是猜那更多的是Scala的错,而不是IDE。 如果你说,除了前两个,其余都不是重大问题,那我也同意。

    1.9K30

    Linux下解决.configure ,make,make install的报错

    Linux下从源代码下编译安装一个软件有时候会报错,遇到一些麻烦。有些情况即使你用了很多方法尝试解决,但问题依然存在,那怎么办呢?...然而,并不 能清楚显示你需要安装哪个包,而会是一个特别广泛的包,你可以尝试在web上搜索.h 看属于那个包,然后尝试用您系统的包管理器这安装这个包(如果可能的话...如果你确实需要编译他,尝试降低依赖。然而,寻找其他方法来安装软件或者找一个替代品是最好的方法。...同意这样做不太好,不够简洁和方便。但是有时候开发者没有时间开创建一个安装目标。我们不应该对此感到气氛。。。...想想他们为了让我们使用有用和有趣的程序而做出的努力吧 其他问题: 这是一些其他常见的问题,并附上解决办法: 1.一切正常,但是当我要运行刚才安装的软件,bash提示找不到。

    27.1K21

    你的博客用不着什么JavaScript框架

    当我第一次听说可以编写 React 并使用这个很酷的 GraphQL 新玩意儿,同时还能输出不需要 JavaScript 的静态页面很想尝试一下。...挑选了一些不需要添加客户端 JavaScript 也能添加功能的插件: 在帖子中显示代码段,通常会包含特定于语言的语法高亮显示。...例如,在 Eleventy 中没有一种优雅的方法来生成响应式图像。...其中一些工具,例如 Andy Bell 的 Hylia 入门套件可以在几分钟内搞定一个网站。甚至预配置了 Netlify CMS,因此你无需编写任何代码即可编辑网站内容。 到了什么呢?...并不是推荐大家都删除自己网站上的所有 JavaScript 文件,但从现在开始,在构建网站我会尝试将 JavaScript 视为可选的额外功能,而不是体验的基本组成部分。鼓励你也这样做。

    4.1K10

    深度学习中的正则化技术概述(附Python+keras实现代码)

    当我们训练模型,我们的模型甚至会试图学到训练数据中的噪声,最终导致在测试集上表现很差。 换句话说就是在模型学习过程中,虽然模型的复杂性增加、训练错误减少,但测试错误却一点也没有减少。...因此,当我们试图压缩我们的模型非常有用。其他的情况下,我们通常更喜欢L2。 在keras,我们可以对每一层进行正则化。 以下是将L2正则化应用于全连接层的示例代码。...在keras中,我们可以使用回调函数(callback)实现早停。以下是的示例代码。 在这里,monitor表示需要监视的数量,'val_err'表示验证错误。...现在,我们尝试数据增强(data augmentation)。 现在,为了增加训练数据 在这里,使用了zca_whitening作为参数,突出了每个数字的轮廓,如下图所示。 哇。...最后,让我们尝试最后一个正则化方法-早停(early stopping)。 你可以看到,模型训练仅在5次迭代后就停止了--由于验证集准确率不再提高。

    97010

    干货|深度学习中的正则化技术概述(附Python+keras实现代码)

    当我们训练模型,我们的模型甚至会试图学到训练数据中的噪声,最终导致在测试集上表现很差。 换句话说就是在模型学习过程中,虽然模型的复杂性增加、训练错误减少,但测试错误却一点也没有减少。...因此,当我们试图压缩我们的模型非常有用。其他的情况下,我们通常更喜欢L2。 在keras,我们可以对每一层进行正则化。 以下是将L2正则化应用于全连接层的示例代码。 ?...在keras中,我们可以使用回调函数(callback)实现早停。以下是的示例代码。 ? 在这里,monitor表示需要监视的数量, val_err 表示验证错误。...现在,我们尝试数据增强(data augmentation)。 ? 现在,为了增加训练数据 ? 在这里,使用了zca_whitening作为参数,突出了每个数字的轮廓,如下图所示。 ? ? ?...最后,让我们尝试最后一个正则化方法-早停(early stopping)。 ? 你可以看到,模型训练仅在5次迭代后就停止了--由于验证集准确率不再提高。

    1.8K20

    十五条有用的Golang编程经验

    说实话,虽然玩得很开心,但我最开始开发得非常慢。是在不知道任何约定的情况下尝试着用一门新的语言来编写这个应用程序。事实是,喜欢。那些“啊哈!”...在写第一行代码之前 包的布局 虽然这对于需要编译的语言来说并不是必需的,但Golang需要,只是没有找到一个像Ruby、Chef或Node那样的标准目录结构。...defer 这是另外一个非常有用的Golang特性。形象这是Golang实现并行处理和错误模型的结果,但defer可以很容易地让源代码看起来更清晰。...通过阅读的源代码,了解到了强大的parser和ast库。 GOARCH、GOOS、CGO和交叉编译 创建CapsuleCD独立二进制文件的目的是要将端口启动到Golang上。...测试数据放在一个特殊的testdata目录中。 使用go build,testdata目录和_test.go文件都会被编译器忽略。

    1.8K80

    由鸭子测试看 Go 语言的接口实现

    当我看见一只鸟叫得像鸭子,游像鸭子,也走得像鸭子,长着羽毛也有脚蹼,还和鸭子在一起,那我当然会判断它是个鸭子。」 这句话很讽刺,且无理。...如果你还没有理解这种编程中的「鸭子类型」,在这里尝试翻译一下: 假设类型 I 有 A、B、C 三个方法。...instance,当我们准备调用它的 print 方法的时候,既可以是 ClassA,也可以是 ClassB。...静态类型的编译型语言就没有这个缺陷,变量都有严格的类型,类型上有什么方法没有什么方法,在编译的时候就能提前确定并暴露给开发者,这是静态语言的优点。...Go 语言作为高级编程语言的后起之秀,兼具了静态语言和动态语言在类型设计上的优点,既让开发者没有类型声明之累,又可以在编译阶段就确定类型错误。在这一点上,Go 语言是怎么做到了呢?

    48910

    imx6ull配置交叉编译环境编译u-boot及linux所遇问题解决记录

    一、问题 1 及解决方法 1、问题 1 描述 在配置交叉编译环境,所需要的编译器是 arm-linux-gnueabihf-gcc,且 arm-linux-gnueabihf-gcc 是 arm-linux-gnueabihf-gcc...-4.9.1 的软连接,也可以看到在 bin 目录下存在此编译器: 但是当我输入 arm-linux-gnueabihf-gcc -v 查看编译器版本,出现 bash: arm-linux-gnueabihf-gcc...问题在于试图在一个不兼容的系统上运行,因为目前系统是 64-bit 或非 x86 架构。...*** [Makefile:541:menuconfig] 错误 遇到的错误提示 fatal error: curses.h: 没有那个文件或目录 表明您在尝试编译 Linux 内核配置界面,系统找不到.../imx6ull-sbc/src/imx6ull-linux-4.1.15” make: *** [Makefile:22:linux] 错误 2 这个错误信息表明您在编译过程中遇到了因为找不到 lzop

    24510

    雄心勃勃的计划:沃尔沃正在将 Rust 用于其车载软件

    有趣的是,大概是在那一周或之后的一周,在 Reddit 上看到了 Rust 1.0 最终版本即将发布的帖子。显然,履行了承诺,和我在 2009 年前后第一次发现 Rust 一样。...几年后,当我加入沃尔沃汽车公司已经被它所吸引,认为它对沃尔沃汽车公司来说很有用,因为的设计理念与你在开发安全关键软件所秉持的原则是一致的。你肯定愿意将质量保证提前。...JG:没有什么重要的事。但当我开始在沃尔沃的工作的第一个项目是在 Core Computer 的原型上对 Signal Broker 做 Android 集成。...还有一个一开始没有意识到的好处是,让新员工加入进来更容易,因为新员工可以自由地使用代码库,尝试改进、更改或重构,除非所有的不变量都被再次维护,否则编译器都不会编译。...在 Rust 的最新版本中,你可以给编译器提供一个代码检测覆盖率标识,这样就能得到额外的说明信息。然后,它将为你显示实际执行的代码路径。我们需要做一些工作,把应用到嵌入式目标上。

    55720

    博客 | 重温五条 AI 基础规律

    在这两种情况下,我们对训练集进行分类都得到了同样的准确率——两中决策边界都标错了一个例子。但是如图示,当我们在数据中加上一只未出现过的猫,只有左图的决策边界会正确地预测这个点为猫: ?...当机器学习模型表现异常,潜在的问题通常是模型没有经过足够或正确的数据训练。尽管更多的数据几乎总是有帮助,但需要注意,数据越多可能得到的回报却在减少。当我们将第一个图的数据加倍,准确度明显增加。...因而决策边界没有那么多的摆动空间,只有一个“正确”的答案。 4. 从一个简单的基线开始 这并不是说你应该尝试了一点简单的东西就觉得满意然后停下来。...可以举一个关于我自己的真实例子,当我读研一,我们实验室的同学兼 Eloquent 的研究员 Angel 和我参与了一个项目,我们各自将语言里描述时间的词转化成可供机器阅读的格式。...你可能以为已经吸取了教训,然而几年之后,当我成为一名高年级研究生要让另一个系统启动并用于另一个基金项目。再一次试图训练一个花哨的机器学习模型,但几乎没有做出什么成果。

    36810

    秘籍在手,训练不愁!特斯拉AI负责人Karpathy的超全神经网络训练套路

    然后可以在同一个图中同时显示标签和预测,并确保一旦达到最小损失,它们就会完美对齐。如果没有对齐,那么就意味着哪里有一个错误,我们将无法进入下一个阶段。...使用特例 编写特例是一个通用的编码技巧,但我经常看到人们写下一个非常复杂的例子。建议先从相对一般的功能开始。喜欢为现在正在做的事情编写一个非常具体的函数,让运行,之后概括得出的的结果。...一个很常见的错误是,当你可以收集更多的数据,你却绞尽脑汁花大量的工程周期在一个小数据集中提高效率。据我所知,添加更多的数据几乎是唯一能够保证提高配置良好的神经网络性能的方法。...另一种方法则是集成学习器(如果你能负担起的话),但它只有在集成5个个体学习器以上才能展现比较好的效果。 数据扩增。除了真正数据,你还可以使用半真半假的数据-尝试更具有挑战性的数据增强。...有一次在寒假期间,在训练模型的时候不小心离开了,然后模型自己一直训练,当我1月份回来时,它是SOTA(达到了最好的状态) 结论 一旦你做到了以上所有这些,你会对技术,数据集和问题有更加深刻的理解,

    54230

    干货 | 重温五条 AI 基础规律

    在这两种情况下,我们对训练集进行分类都得到了同样的准确率——两中决策边界都标错了一个例子。但是如图示,当我们在数据中加上一只未出现过的猫,只有左图的决策边界会正确地预测这个点为猫: ?...当机器学习模型表现异常,潜在的问题通常是模型没有经过足够或正确的数据训练。尽管更多的数据几乎总是有帮助,但需要注意,数据越多可能得到的回报却在减少。当我们将第一个图的数据加倍,准确度明显增加。...因而决策边界没有那么多的摆动空间,只有一个“正确”的答案。 4. 从一个简单的基线开始 这并不是说你应该尝试了一点简单的东西就觉得满意然后停下来。...可以举一个关于我自己的真实例子,当我读研一,我们实验室的同学兼 Eloquent 的研究员 Angel 和我参与了一个项目,我们各自将语言里描述时间的词转化成可供机器阅读的格式。...你可能以为已经吸取了教训,然而几年之后,当我成为一名高年级研究生要让另一个系统启动并用于另一个基金项目。再一次试图训练一个花哨的机器学习模型,但几乎没有做出什么成果。

    37620

    Rust vs C++:2024,谁更懂错误处理?

    席双嘉立刻来了精神,眼睛一亮,「好啊,如果赢了,今晚的加班夜宵你买单!」 贾克强笑着拍胸脯,「行!但如果赢了,你穿上给你准备的‘安全第一,用Rust’的T恤,还要给团队做个分享。」...如果没有,则打印一条表示文件为空的信息。」 「如果在读取文件发生错误错误将打印到控制台。」 Err(e) => println!...通过创建一个名为 contents 的 std::string 类型的对象来实现。这个对象用两个 std::istreambuf_iterator 迭代器对象进行初始化。」...当然,这将在运行时引发 panic,如果预期的错误发生的话。」 「Rust 编译器会在编译捕获未处理的 Result 和 Option 类型,要求程序员处理,否则就编译失败。...承认,Rust 在帮助避免这类错误上真的做得更棒。开始考虑,是不是该花点时间深入了解下 Rust 了。」 贾克强微笑着说:「看吧,Rust 的设计就是为了避免这样的事情。不过,关键还是用对工具。

    41853

    比较Go、Rust、Scala、Java、Kotlin、Python、Typescript 和 Elm中的编译错误

    让我们看看它在编译错误方面的表现。 向你抛出一个大型错误消息,其中包含一些信息。它是第一个尝试帮助你并显示类似方法的,该方法称为 error1。它还显示尝试查找方法的结构体。...最后,我们检查了著名的 Elm 的编译错误。它有点不同,因为没有使用类,以及 Elm 中函数的工作方式。就像 Rust 一样,显示找到的类似内容,error1。...比较第一批编译错误认为 Java 最糟糕,的简短 cannot find symbol 与 Typescript 并列,因为它们没有显示有问题的源代码行。...没有显示行或值,而是显示一个神秘的、技术上正确的错误消息。这对来说感觉就像 1992 年的 C 语言。...当我们按照建议进入解释,这比错误消息更好,因为指出了我们使用错误的类型作为参数(但没有看到我们反转了参数)。

    12310

    代码调试的最佳指南

    这本书没有读过,但是已经买了一本,希望读完后决定是否应该推荐。...认为这里可能需要循环地重复以下步骤: 猜测可能发生的错误的某一个方面(比如说,“这个变量被设置为X,应该是Y”,或“发送到服务器的请求是错误的”,或“这段代码根本没有运行过”等等)。...; 文档是正确的; 正在查看的代码在某个时刻被执行; 这两段代码是按顺序执行的,而不是并行执行的; 这段代码在调试模式和发布模式下编译(使用或不使用-O2开关,或…),会做同样的事情; 编译没有错误...Peep是一个“Network Auralizer”,可以将系统上发生的事情转换成声音。花了10分钟试图让编译,但迄今为止失败了,但它看起来很有趣,想继续尝试!!...每当我的程序有问题并且报告这样的错误信息“Error:无法连接到某个IP的端口443:连接超时”都想说:“谢谢,这就是想知道的事情”。

    1.1K40

    使用Go语言来理解Tensorflow

    Tensorflow并不是机器学习方面专用的库,而是一个使用图来表示计算的通用计算库。的核心是用C++实现的,并且还有不同语言的绑定。...因此,当我们使用任何一个API,我们真正做的是描述一个图:当我们把图放到Session中并显式地在Session中运行图,图的计算就开始了。...第一节课:节点ID 每当我们调用一个方法来定义一个操作,Python API都会生成不同的节点,无论是否已经被调用过。下面的代码返回3。 ?...当我尝试添加一个具有与/到op_name相同路径的节点,WithOpName方法会添加一个后缀_(其中是一个计数器),因此它将成为同一范围内的重复的节点。...有两种定义节点的方法:在不同的作用域(Go语言)中定义操作或更改操作名称。 我们解决了重复节点名称的问题,但另一个问题显示在我们的终端上。 ? 为什么MatMul节点会出现错误

    1.4K100

    大神告诉你秘诀:内化的逻辑

    现在正在尝试学习 Lua,能看懂每一行的意思,但是到了要写出来的时候就不知道该怎么做了。 针对ta的苦恼,网友大神们纷纷给出建议。 你是说循环、变量之类的语法吗? 还是说排序、搜索、递归?...闪存卡式的记忆术将花费你大量的时间,而且几乎没有任何回报。 知道算法,因为它们是解决问题的广泛技术。 每当我搞不清特定语言的确切语法都会google,然后阅读文档。...Linters 和编译错误消息通常也很有帮助。 在过去的十年里,已经建立了一个称之为「个人备忘单」的笔记合集,其中包括需要反复查找的所有内容。...但是当我学习一种新的语言或概念,拥有备忘单是关键的一步。重新找到你记忆中的SO帖子或博客文章的过程实在是太太太麻烦了。 如果你是指代码的语法,那么没有必要记住。上网查一下就行了,很容易。...如果你指的是实际的算法(一段代码是一个算法的实现),那就不要把注意力集中在「记住」上,要试着去分析和理解,就像它是某种神秘的公式一样。

    43310
    领券