问题标签 [spring-boot]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1679 浏览

java - 春季启动和 ddl-auto 问题

我目前正在使用 spring-boot 来创建一个使用 Spring MVC 和 JPA 数据的 Web 应用程序,但是我遇到了属性spring.jpa.hibernate.ddl-auto: create的问题,因为它似乎在第一次运行我的表 A 、 B 、 C被正确创建。然后我填充所有 3 个表,当我关闭应用程序并重新运行它时,只有表 A 仍然包含填充的数据。

表 B 和 C 完全消失了,这有点奇怪。

有谁知道为什么会这样?

我的 pom.xml 中有以下内容作为依赖项

spring.jpa.hibernate.ddl-auto

0 投票
2 回答
11561 浏览

java - Spring Boot 验证响应 JSON

一般来说,我对 Spring 还是很陌生,我正在尝试使用 Spring Boot。我有一个(希望)快速的问题。我正在尝试构建一个将返回 JSON 的 ReSTful 服务。我遵循了构建 RESTful Web 服务指南,并且可以成功返回 JSON。我已将 JPA 集成到我的 Web 服务中,以便我的数据由数据库支持。

现在,我需要创建一个路径,用户可以在其中创建一个对象,并且我希望验证该对象。我遵循了验证表单输入指南,但我并没有真正尝试创建提供 Web 内容的服务。我想要的是,每当发生验证错误时,返回我自己的自定义 JSON。到目前为止,虽然我尝试遵循Petri 的 Sweet Rest API 指南,但我还没有找到任何资源来实现这一点,我发现该指南在多个场合都很有帮助,但在这种情况下似乎不太有效。我正在使用hibernate-validator:5.0.1.Final和休眠以下内容。

然后我的人控制器:

这以最严格的方式工作,如果您将垃圾 JSON 发送到此路由,它将返回 400,这非常好。但是响应的正文是一个不太好的 HTML 页面。所以,我的问题是,有没有办法捕捉验证错误?我尝试将以下内容添加到我的控制器中,但没有成功:

我知道 Bad Gateway 不是有效的返回码,但我用它只是为了证明从未调用过异常处理程序。当我发布到我的休息服务时,我仍然看到 400 Bad Request + HTML。我会假设有一些我可以覆盖的合理默认值,但我似乎无法弄清楚它在哪里。我试过谷歌搜索和搜索stackoverflow,但没有成功。

提前致谢。

更新

如果我修改控制器以BindingResult在方法签名中包含 a:

我可以让它工作。(请注意,我还必须将 jasper-el jar 添加到我的依赖项中)我之前尝试过,但没有让它工作,但原因并不直观。我使用以下 JSON 发布:{ "id" : "foo", "age": 22, "name" : "James Bond" } 根据JSON Spec,这是有效的 JSON。显然,我的 Person 模型不能将字符串“foo”转换为 long。我不会讨论错误是否应该是 400,我的新问题是:我怎样才能捕捉到这个 400?

0 投票
3 回答
6672 浏览

java - 如何向 Spring Boot 添加一个指标?

Spring Boot 具有预配置的指标。据我所知,它使用http://metrics.codahale.com/库。如何获取MetricRegistry对象以添加我的自定义指标?

0 投票
4 回答
6823 浏览

cucumber-jvm - 任何让 Spring Boot 与 cucumber-jvm 一起工作?

我正在使用 spring boot,因为它消除了所有无聊的东西,让我专注于我的代码,但是所有测试示例都使用 junit,我想使用 cucumber?

有人能指出我正确的方向,让黄瓜和弹簧启动,做所有的自动配置和连线,让我的步骤定义使用自动连线的 bean 来做事吗?

0 投票
0 回答
4445 浏览

spring - 使用 Spring 4/Boot 初始化 Quartz 调度程序

我有一个带有Spring Boot的Spring 4应用程序-

没有WEBINF/web.xml文件,但是,我想在应用程序启动时初始化一个Quartz 2.2.1 调度程序。但是,所有使用QuartzInitializerServlet的示例都定义了web.xml文件中的设置。

我可以将这些配置添加到我的应用程序启动配置中吗?

更新

弄清楚了 spring-framework 石英 bean,现在我需要正确实现数据存储以恢复运行之间的作业。

我正在使用 postgresql + spring-data & hibernate。此配置在每次运行时重新初始化数据库。HSQL 也会重新初始化一些“import.sql”数据。我应该创建一个休眠界面以便在测试时恢复作业吗?

0 投票
2 回答
16779 浏览

java - 使用 spring-boot 的 Maven 模块

我喜欢通过创建模块来在 Maven 中配置我的应用程序:

然后,这些模块使用“example-app”作为父级。

现在我想为我的 Web 应用程序使用“spring-boot”。

有没有办法配置 maven,使我的“app-web”是一个 spring-boot 应用程序?

我面临的问题是你必须使用 spring-boot 作为父母。

0 投票
2 回答
4227 浏览

java - Spring Boot 和 tomcat

我想看一个可以让我做的弹簧靴示例:

我尝试了现有的示例和以下教程,但没有运气。

0 投票
2 回答
3611 浏览

java - 带有 Spring starter 多模块项目的大型战争文件

我有一个大项目,由几个小模块组成:

  • core.jar:包含实体和数据 jpa 存储库,使用 spring-boot-starter-data-jpa
  • api.jar:包含所有其余控制器,依赖于 core.jar 并使用 spring-boot-starter-web
  • web.war:入口点,包含配置并按照指南从可执行jar转换为war:http: //spring.io/guides/gs/convert-jar-to-war/

一切正常,唯一的问题是战争文件非常大,在当前代码库中大约 > 300MB(非常小,只有一些控制器,几个实体)。我做了一些调查,发现 core.jar & api.jar 包含依赖项,web.war 也再次包含那些依赖项包括他自己的依赖项。

无论如何,我们是否有构建 jar,没有依赖关系的战争,并让他们在生产机器上首次启动时下载依赖关系?或者依赖包分开,所以在增量部署中,我们不需要重新上传整个东西?

问候,

更新1:

问:我是否需要 core.jar 和 api.jar 才能执行。

答:不,我不需要它,但我也不想列出我可以通过 includespring-boot-starter-data-jpaspring-boot-starter-web

我所有的 pom.xml

我的 core.jar pom.xml

我的 api.jar pom.xml

我的 web.war pom.xml

0 投票
1 回答
4233 浏览

spring - 通过gradle构建spring-boot应用程序时应该在哪里存储静态资源?

我找到了将静态文件存储在/src/main/webapp//src/main/resources/static/. 有什么区别,在spring-boot应用程序中存储静态文件的最佳位置是什么?

0 投票
1 回答
847 浏览

jersey-2.0 - 自动装配 Spring MVC 与 JERSEY 空指针异常

我正在尝试按照没有 XML 配置的新趋势在 WebApp 的球衣控制器中自动装配 Neo4J 存储库。让它适用于 MVC 控制器,但不适用于抛出 NPE 的泽西岛。简化代码在这里。我认为这与 Neo4J 无关,因为更简单的 bean 我不相信它们会在 Jersey 控制器中自动装配。它可能在泽西配置中。下面更详细地介绍控制器类和 Jersey 配置。

MVC 控制器。

泽西控制器。

泽西配置主要。

泽西配置类。