我的实体有两个约会.即.
Date startDate;
Date endDate;
Run Code Online (Sandbox Code Playgroud)
我如何查询以便给定日期,它将返回指定日期位于startDate和之间的所有实体 endDate?
我已经尝试过以下方法:
findByStartDateAfterAndEndDateBefore(Date givenDate);
Run Code Online (Sandbox Code Playgroud)
Spring-Data-JPA不喜欢这样并且遇到错误.没有特定的错误,repo就不能注入我的班级.
什么是正确的方法?我知道这可以通过Hibernate标准或使用Native SQL轻松完成,但尝试在Spring JPA中执行此操作.
这是查询本身的问题还是Spring使用的Date类型之间的某种不兼容性?
尝试findByStartDateAfterAndEndDateBefore(Date givenDate, Date givenDate)然后返回null.
尝试将 SQLTypeProvider 与 postgres 一起使用时,运行时出现以下错误
dotnet build
Run Code Online (Sandbox Code Playgroud)
错误 FS3033:类型提供程序 'FSharp.Data.Sql.SqlTypeProvider' 报告错误:无法加载文件或程序集 'System.Runtime.CompilerServices.Unsafe, Version=4.0.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a'。该系统找不到指定的文件。[/home/sashan/code/titan/src/Server/Server.fsproj]
我的数据提供者是这样的:
type SQL = SqlDataProvider<
ConnectionString = pg_dev_conn_string,
DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
UseOptionTypes = true >
Run Code Online (Sandbox Code Playgroud)
如果我将其更改为以下内容
type SQL = SqlDataProvider<
ConnectionString = pg_dev_conn_string,
DatabaseVendor = Common.DatabaseProviderTypes.POSTGRESQL,
ResolutionPath = "/home/sashan/code/dotnet/2.1.500/sdk/NuGetFallbackFolder/system.runtime.compilerservices.unsafe/4.5.1/lib/netcoreapp2.0",
UseOptionTypes = true >
Run Code Online (Sandbox Code Playgroud)
错误消失了,但我不明白为什么。修复看起来真的很奇怪。为什么我必须将它指向我的项目之外的文件?System.Runtime.CompilerServices.Unsafe.dll 不应该位于编译器可以找到它的项目子目录之一中的某个位置吗?
SonarLint产生错误:
Package names should comply with a naming convention (squid:S00120) ... With the default regular expression ^[a-z]+(\.[a-z][a-z0-9]*)*$.
但是,JLS允许甚至建议使用下划线.第6.1条.声明说,ia,
如果域名包含连字符或标识符(第3.8节)中不允许的任何其他特殊字符,请将其转换为下划线.
我可以更改正则表达式还是必须在产品中修复?