我在 Spring Boot 中使用 swagger,但 UI 没有显示控制器。我的项目看起来像:我在根项目中有几个 gradle 模块。REST 有两个:
当我尝试运行 swagger-ui 时,UI 上没有资源。但!当我将控制器移动到文档模块时,一切正常,或者当我将带有 swagger 注释的接口移动到 rest 模块时。问题仅在我使用两个模块时,一个用于 swagger 注释,另一个用于实现这些接口。
我应该怎么做才能使其与两个模块一起使用?我也在我的 SwaggerConfig 类中尝试了 ComponentScan 注释(这个类也在文档模块中)但它也不起作用。
我的项目结构:
|-- Project
| |-- app
| |-- src/main/java
| |-- mypackage
| |-- App.java
| |-- documentation
| |-- src/main/java
| |-- mypackage
| |-- config
| |-- SwaggerConfig.java
| |-- documentation
| |-- ProductSwaggerInterface.java
| |-- rest
| |-- src/main/java
| |-- mypackage
| |-- …Run Code Online (Sandbox Code Playgroud) 我正在尝试为文档中的数组字段创建唯一索引。该索引应该像当我有一个包含包含两个元素的数组的文档时一样工作,然后如果我想添加一个新文档,其中数组字段如果包含这两个元素,那么应该会发生重复错误 - 但在只有一个元素是的情况下不会在另一个数组中重复。也许我会用这个例子来说明我的意思:
首先我创建一个简单的文档:
{
"name" : "Just a name",
"users" : [
"user1",
"user2"
]
}
Run Code Online (Sandbox Code Playgroud)
我想在“用户”数组字段上创建唯一索引。我想要的结果是可以创建另一个这样的文档:
{
"name" : "Just a name",
"users" : [
"user1",
"user3"
]
}
Run Code Online (Sandbox Code Playgroud)
或者
{
"name" : "Just a name",
"users" : [
"user2",
"user5"
]
}
Run Code Online (Sandbox Code Playgroud)
但应该不可能创建第二个:
{
"name" : "Just a name",
"users" : [
"user1",
"user2"
]
}
Run Code Online (Sandbox Code Playgroud)
或者反过来:
{
"name" : "Just a name",
"users" : [
"user2",
"user1"
]
}
Run Code Online (Sandbox Code Playgroud)
但这是不可能的,因为 Mongo 给我一个错误,“users1”是重复的。是否可以在所有数组元素上创建唯一索引,如上所示?
我正在尝试使用 MongoDB 和 spring-data 在 Spring Boot 中运行我的应用程序,但我不能,因为 IntelliJ 在构建过程中向我显示了此错误:
错误:java:找不到类型 java.sql.Date。您是否缺少对类路径的依赖?
我正在使用 mongo java 驱动程序版本 3.8.2,spring boot 2.1,项目使用 Java 11。我不知道这里出了什么问题,有人可以帮助我吗?
mongodb ×2
spring-boot ×2
arrays ×1
collections ×1
java ×1
spring-data ×1
swagger ×1
swagger-ui ×1