我收到以下警告:
Type mismatch.
Required: Any
Found: Customer?
当尝试在可空的客户
实例上调用toMono()
方法时:
@Service
class CustomerServiceImpl @Autowired constructor(
val customers: ConcurrentHashMap<Int, Customer>
) : CustomerService {
override fun getCustomer(id: Int): Mono<Customer?> {
return customers[id].toMono()
}
}
客户服务:
interface CustomerService {
fun getCustomer(id: Int): Mono<Customer?>
}
AppConfig:
@Configuration
class AppConfiguration {
companion object {
val initialCustomers: Array<Customer> = arrayOf(
Customer(1, "Jerry"),
Customer(2, "James"),
Customer(3, "John")
)
}
@Bean
fun createCustomers() = ConcurrentHashMap<Int, Customer>(
initialCustomers.associateBy(Customer::id)
)
}
当我将CustomService
接口中的返回类型定义为非空客户
实例(: Mono
似乎<code>是单声道。JustoEmpty()是我在这里寻找的,仅供参考。这似乎解决了可空对象的问题。
您似乎正在使用的 toMono()
扩展定义如下:
fun <T : Any> T.toMono(): Mono<T> = Mono.just(this)
因为< code>T : Any,所以接收方不能为空。
我猜你需要这样的扩展:
fun <T : Any?> T.toMono(): Mono<T> = Mono.justOrEmpty(this)
声明:我甚至没有测试这是否编译。
它打印出值的等效,这是因为这一行: 通过调用表示。 那么,如何使Hibernate相信是的实例? 我的枚举是由加载的。而由URLClassLoader加载,由另一个类加载器加载。
我在这里复制代码;https://developer.android.com/codelabs/kotlin-android-training-view-model#5 但我从DataBindingUtil中得到了一个类型不匹配。充气方法。正在返回ViewDataBinding!,当需要FragmentPlayBinding时。 我https://github.com/google-develop
问题内容: 编写内部API时遇到以下错误。我正在尝试以以下方式读取值(SQL Server 2012): 现在,虽然看起来有些奇怪,但我以这种方式阅读的原因是因为它是我编写的包装程序的一部分,我们使用它来加快sql的读写速度。它接受一个匿名对象,并根据属性名称或属性名称将所有sql值读入其中。 这适用于除以外的所有内容。我进行了类型比较,它也同样失败,因此很hacky,我什至无法检查该列是否为类型
问题内容: 我正在玩Go,发现一个我无法解决的问题。假设我有如下代码: 我导入了软件包并开始使用它: 我真的很喜欢我的助手“运行”,但是我想使其更加慷慨:我不希望人们总是向我传递MySQL客户端。可以是具有“ RunQuery”和“ Result”方法的任何东西。所以我尝试使用接口: 可悲的是,这不再编译了。我收到此错误: Go不支持此功能吗,或者我做错了什么? 问题答案: 应该返回接口,否则你总
当我想跑的时候: 我得到: 执行操作“MappingAddAction”的服务异常,java.lang.IllegalArgumentException:参数值[5118]与预期的类型[com.vernuso.trust.server.domain.ClientImport.MappingInfo(N/A)]不匹配 有人能帮助我理解为什么它需要类型而不是类型吗? 我有两个表,如下图所示。Mappi
我做错了什么? 正在更新: 我发现了问题所在。问题与ActionRepository中找到的函数有关。函数的签名首先要求两个日期进行比较,然后id和我给出了相反的值。我很清楚,在我上了它之后,我会有一个问题的日期,所以答案确实帮助了我。谢谢大家!