当前位置: 首页 > 知识库问答 >
问题:

@对于长有效数据类型不适用于强制检查

岑畅
2023-03-14

我有下面的输入类,当我在输入中触发没有'interactionId'参数的api时,我期望验证错误消息"interactionId不能为空",但是验证通过,我想可能是由于interactionId的默认值为0。

能找个人吗。当输入中没有给出“long”参数时,是否帮助对其强制执行此验证?

使用@NOTURTTY作为客户ID参数,它可以按预期工作。使用@NOTURTY作为长参数"interactionId"会抛出一个不同的错误,@NOTMPTY不能长时间使用。

public class Input {

@NotEmpty(message = "customerId cannot be empty")
private String customerId;

@Valid
@NotNull(message = "interactionId cannot be empty")
private long interactionId;
 // setters and getters

}

我的控制器类:@RestController公共类控制器{

@PostMapping(value="/detailed-customer-transaction", produces = 
MediaType.APPLICATION_JSON_VALUE)
@ResponseBody
public ResponseEntity<Object> detailTransactions(@Valid @RequestBody Input 
params)
{
    return new ResponseEntity<>(Dao.detailTransactions(params), HttpStatus.OK);
}

以上问题由Long改为Long后得到解决。

问题2我需要另一个帮助。我有一个字符串输入参数,它采用以下格式的日期时间格式。假设它是一个字符串参数,我如何验证模式=“yyyy-MM-dd'T'HH:MM:ss.SSS'Z'”

共有1个答案

孔睿
2023-03-14

long应该是long,因为long是java中的主要类型,而不是对象,所以long是一个可以检查是否为null的对象

 类似资料:
  • 在本地我使用mysql,所以当我使用 不幸的是,应用程序也必须在不同的数据库上运行,我还没有被告知哪些数据库是“完全”的。 是否有可能制作出具有类似效果的东西,但可以在大多数数据库中使用?我怎样才能做到这一点?

  • 我正在尝试将数据库中列表中的项作为行中的单个值插入。如何循环发送的有效负载并将所有项插入到单独的行中?我试着找例子,没有运气。我无法循环并插入数据库中的值。 这是有效载荷

  • 我试图在一个测试中模拟。我在网上找到了一些人们也这么做的例子。 一个例子来自sping-data-elasticsearch,另一个来自一些教程。 这是我自己的例子。 不幸的是,我看到了一些警告。以下是我得到的: 网络客户。RequestHeaderUrispec是原始类型。对泛型类型WebClient的引用。RequestHeaderUrispec应该参数化 当我更改代码并向添加通配符时,我会收

  • 问题内容: 我需要一些正在创建的MySQL实用程序的测试数据。有谁知道我在哪里可以找到与SQL Server的Northwind具有相似(如果不是更多)数据量的数据? 问题答案: 更新: 这是大约4年前的答案,并且由于时间原因链接已失效,一旦找到链接,我会立即放置新链接。 1- FlightStats 2- NW模式的MySql版本(InnoDB) 3- NW模式的MySql版本(MyISAM)

  • 问题内容: 我正在进行的一个项目在不久的将来可能会跨越几百万行,所以我正在研究我使用的数据库,因为这肯定会证明是一个问题。据我所读,一旦涉及到表的2,000,000行问题,SQL的所有形式都会出现问题。对于这些大型项目,有没有推荐好的数据库? 我正在谈论的是一个网站,归档旧条目并不理想,但是如果证明这是我无法克服的问题,则可以这样做。 谢谢。 问题答案: 我已经在MS SQL Server中使用了

  • 问题内容: 根据这个答案 我试图在我的桌子上创建一个Select for 但是我对位类型示例sqlfiddle遇到了问题,如您所见,它应该返回4行,但它仅返回3行,所以我想念什么? 问题答案: 这是因为您可以将as作为列的值。而且SQL具有三值逻辑,因此检查将返回,而不是(如您期望的那样)。我认为此查询将为您提供帮助: