草庐IT

Tomcat-Spring-Hibernate

全部标签

java - 如何在 Spring Boot 中全局配置 `@DateTimeFormat` 模式?

我是我的SpringBoot应用程序,我有一些接受日期作为查询参数的Controller:@RestControllerpublicclassMyController{@GetMappingpublicResponseEntitygetDataByDate(@RequestParam(value="date")@DateTimeFormat(iso=DateTimeFormat.ISO.DATE)finalLocalDatedate){returnResponseEntity.ok();}}效果很好,我什至可以使用@RequestParam(value="date",required=

java - 使用 AWS IAM 或 Cognito 的 Spring Security

我已经编写了几个服务于RESTfulAPI的Spring4后端Web应用程序。我什至设法使用SpringWebSecurity来保护这些。在一种情况下,我们安装了自己的OpenAm实例。转到客户端UI的用户可以登录OpenAM,客户端Web应用程序会在cookie中取回token。我们将该token传递给header中的后端,然后SpringSecurity使用CustomeUserDetailsS​​ervice对照OpenAM检查该token是否有效。如果是这样,我们在SpringSecurityContext中创建一个用户,分配角色,然后我们查看这些角色是否对API有效。如果是,

java - 如何通过 Spring Web 服务器将 HTTP 视频流代理到任意数量的客户端

假设我有一个视频HTTP流在与我的SpringWeb服务器位于同一网络的服务器上广播,例如在某些url中,例如:http://localhost:9090/httpstream如何使用Spring将此视频流代理到任意数量的客户端?以下示例演示了所需的流程:可以在http://localhost:9091/spring找到Spring网络服务器客户想要访问视频流,因此他将视频流播放器连接到http://localhost:9091/spring(Spring网络服务器)SpringWebServer应该重定向在http://localhost:9090/httpstream上找到的流给客

java - 如何在 spring data rest/HATEOAS 中创建一个引用已经存在的子实体的新父实体

在我的项目中,我有两个领域模型。父实体和子实体。父引用子实体列表。(例如Post和Comments)两个实体都有它们的spring数据JPACrudRepository公开为@RepositoryRestResource的接口(interface)HTTPGET和PUT操作工作正常,并返回这些模型的良好HATEOS表示。现在我需要一个特殊的REST端点“创建一个引用一个或多个已存在子实体的新父级”。我想将对child的引用作为我在请求正文中传递的文本/uri列表发布,如下所示:POSThttp://localhost:8080/api/v1/createNewParentHEADERC

java - Spring Boot 2 和迁移 OAuth2 配置

我们正在将SpringBoot1.5.7应用程序迁移到SpringBoot2,我注意到SecurityProperties.ACCESS_OVERRIDE_ORDER不再可用。我们使用@Order(SecurityProperties.ACCESS_OVERRIDE_ORDER))来强制执行特定顺序的安全配置过滤器,如果没有此注释,它就不再工作(获得不同的状态,因为安全过滤器位于错误的顺序)。是否有一些替换或配置更改以使其以旧方式工作?我们有基本的身份验证+OAuth2。这是我们使用的OAuth2依赖项:compilegroup:'org.springframework.securit

java - 将 'mean' 、 'min' 或 'percentiles' 添加到 Spring Boot 2 指标?

我在SpringBoot2版本2.0.0-RELEASE中使用新的MicroMeter指标。通过/actuator/metrics/{metric.name}端点发布指标时,我得到以下信息:对于DistributionSummary:"name":"sources.ingestion.rate","measurements":[{"statistic":"COUNT","value":5},{"statistic":"TOTAL","value":72169.44162067816},{"statistic":"MAX","value":17870.68010661754}],"ava

java - 如何在 Spring Boot REST API 上设置超时?

我有一些RESTAPI可能需要一段时间才能执行,我想限制它们的执行时间。最好是,如果30秒过去了并且请求没有返回,我想返回一个特定的HTTP代码/数据并完全终止该请求。当前代码:@RestController@CrossOrigin(origins={"*"},maxAge=4800,allowCredentials="false")publicclassAPIController{@RequestMapping(value="/api/myapifunc",method=RequestMethod.POST,produces="application/json")publicResp

java - 如何像 Spring Boot 方式一样为 Micronaut (1.1.4) HTTP 客户端配置 HTTP 代理?

好吧,在与Micronaut进行了多次斗争以控制我们的代理之后,我想到了编写一个SpringBoot应用程序来实现相同目的的想法。对于SpringBoot,HTTP代理配置非常简单,并且有很多示例可用。我提出了这个例子:application.propertiesgeneric.proxyHost=my.corporateproxy.netgeneric.proxyPort=3128MyController.java@Value("${generic.proxyHost}")privateStringproxyHost;@Value("${generic.proxyPort}")pri

java - 调用 Tomcat doFilter() 并提交响应

我有一个Tomcat过滤器,它根据URL将请求委托(delegate)给处理对象。这是FilterChain中唯一的过滤器。我有一个Ajax应用程序可以通过大量请求来处理此过滤器。最近我注意到一个问题,过滤器的doFilter方法经常以提交的响应作为参数调用(在内部,它是标记为提交的土狼响应)。在我看来,如果recycle()方法没有在这个土狼响应中调用,唯一可能发生这种情况的方法。我已检查以确保我没有保留对任何请求、响应、outputStream或编写器对象的引用。此外,我确保在finallyblock中关闭outputStream。但是,这并不能解决这个问题。这听起来像是我在滥用s

Java:Hibernate 看不到 DataBase 的变化

我有两个共享同一个数据库的不同应用程序。问题是当我有一个应用程序更改数据库中的某些内容时,另一个应用程序不会更新。我尝试制作一个session.flush()但它没有用。唯一的方法是关闭整个session并重新创建它,但这当然需要很长时间。 最佳答案 简答:每次你想显示某个对象时发出一个session.refresh(obj)。它将强制Hibernate转到数据库。另一种解决方案是使用StatelessSession,它不会缓存任何内容(甚至一级缓存也不缓存),每次需要记录时都会强制您的应用程序访问数据库:http://docs.j