我试图在我的Spring Boot2.0.4.Release
应用程序上实现查询DSL,该应用程序使用Spring Data Mongo2.0.4.Release
&Gradle4.10
。我正在使用Spring工具套件在本地运行它。
我从包括Spring数据文档在内的多个来源中找到了以下步骤:
apply plugin: "com.ewerk.gradle.plugins.querydsl"
sourceSets {
main {
java {
srcDir "$buildDir/generated/source/apt/main"
}
}
}
querydsl {
springDataMongo = true
querydslSourcesDir = "$buildDir/generated/source/apt/main"
}
dependencies {
compile "com.querydsl:querydsl-mongodb:4.1.4"
compileOnly "com.querydsl:querydsl-apt:4.1.4"
}
sourceSets.main.java.srcDirs = ['src/main/java']
buildscript {
ext { springBootVersion = "2.0.4.RELEASE" }
repositories { mavenCentral() }
dependencies {
classpath "org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}"
classpath "gradle.plugin.com.ewerk.gradle.plugins:querydsl-plugin:1.0.9"
}
}
plugins {
id "java"
id "eclipse"
id "org.springframework.boot" version "2.0.4.RELEASE"
id "io.spring.dependency-management" version "1.0.6.RELEASE"
}
sourceCompatibility = 1.8
repositories { mavenCentral() }
dependencies {
...
compile("org.springframework.boot:spring-boot-starter-web:${springBootVersion}")
compile("org.springframework.boot:spring-boot-starter-data-mongodb:${springBootVersion}")
...
}
apply from: 'gradle/querydsl.gradle'
/* Added this because Eclipse was not able to find generated classes */
sourceSets.main.java.srcDirs = ['build/generated/source/apt/main','src/main/java']
compileJava.dependsOn processResources
processResources.dependsOn cleanResources
repository
注释接口,如下所示。注意:我还将片段存储库FragmentOrderRepository用于一些自定义查询。 public interface OrderRepository<D extends OrderDAO>
extends EntityRepository<D>, PagingAndSortingRepository<D, String>, FragmentOrderRepository<D>, QuerydslPredicateExecutor<D> {}
get
映射,如下所示
@RestController
public class OrderController {
@GetMapping(value="/orders/dsl", produces = { "application/json" })
public ResponseEntity<List> getOrdersDSL(@QuerydslPredicate(root = OrderDAO.class) Predicate predicate, Pageable pageable, @RequestParam final MultiValueMap<String, String> parameters) {
return (ResponseEntity<List>) orderService.getTools().getRepository().findAll(predicate, pageable);
}
}
EnableSpringDataWebSupport
注释 @SpringBootApplication
@EnableSpringDataWebSupport
public class SampleApp {
public static void main(String[] args) {
SpringApplication.run(SampleApp.class, args);
}
}
似乎没有将参数解析为类型。
---更新09/19/19----
在调试时,我发现一个类HandlerMethodArgumentResolverComposite
,它从ArgumentResolver列表中为给定的MethodParameter
查找ArgumentResolver(类型为HandlerMethodArgumentResolver
。此列表不包含QueryDSLPredicatearGumentResolver
。因此,它不能解决这些参数。
发现我所做的错误,是在我的配置
注释类上缺少enableWebMVC
注释。详细信息在本文档中。
有没有办法绕过授权?
我正在尝试将vaadin与spring(没有Spring Boot)和基于java注释的spring部分配置结合起来。 自动连接似乎适用于vaadin ui部分,但不适用于“自定义ui类”(例如,“公共类LoginScreen扩展自定义组件”)。我在SysOut上得到一个NPE或一个空对象。 此外,我注意到“@ComponentScan(base Packages={"net.myapp"})”没
首先要说的是,我一直在寻找解决方案,现在我非常绝望。 当由Spring Boot运行时,我无法从html页面访问css文件。 html。文件 应用JAVA 文件夹结构: 我尝试过将文件夹放入文件夹和/或删除addResourcesHandler,通过相对路径引用css和其他一些东西。似乎没有什么能解决这个问题。请告诉我,如果你试图解决这个问题,但没有找到解决方案,这样我就知道,我不会被忽视。
我将使用Ehcache和Springboot。我只是想知道在处理大量请求时,什么会是最佳配置。 在直播期间,我们可能会收到超过30000 req/h。虽然在开发中,我们无法生成此方案。 你能帮我如何计算内存,以创建一个最佳配置,应在Prod中完美工作。 我检查了Postman中的响应大小,在Dev中为3-5 kb,因此我保留了以下配置,但不确定它会有多好。我们的内存大小为2GB(在prod中,我们
问题内容: 我必须在SpringBoot应用程序中使用@PathValiable从URL获取参数。这些参数通常带有 斜线 。我无法控制用户在URL中输入的内容,因此我想获取他输入的内容,然后我就可以对其进行处理。 我已经在这里浏览过材料和答案,我认为对我而言,好的解决方案不是要求用户以某种方式对输入的参数进行编码。 SpringBoot代码很简单: 因此,URL如下所示: 问题在于,参数 modu
我尝试使用bytebuddy在springboot中实现aop。代码如下: springboot的监听器如下: 最后,在springboot启动中注册侦听器: 当我启动应用程序时,调试记录器显示良好。然而,当请求被处理时,aop不起作用。我做错了什么?我很困惑。。。
我必须在SpringBoot应用程序中使用@PathValiable从URL获取参数。这些参数通常有斜线。我没有一个关于用户将输入URL的控制,所以我想要得到他输入的内容,然后我可以处理它。 我已经看过了这里的资料和答案,我不认为对我来说,好的解决方案是要求用户以某种方式编码输入参数。