当前位置: 首页 > 知识库问答 >
问题:

使用以下代码更改spring应用程序中的时间间隔

江鹏飞
2023-03-14

我有一个spring boot applicate,它使用多种类型的日期对象,比如:

  • java.util.日期
  • java.time.LocalDate
  • java.time.即时

我有一个沙盒环境,我想在它上面做一些测试,但是在测试中,我需要改变时间,将当前的_时间改为一年,换句话说,我想把时间间隔改为一年。

例如:假设现在的日期是7/feb/2022,如果我调用任何date函数,我需要它返回7/feb/2023,

我只想在spring应用中更改日期,我不想更改整个服务器时间。

这在spring应用程序中适用于之前的任何日期对象吗?

更新:我在我所有的应用程序中都使用了这样的代码

LocalDate localDate = LocalDate.now();
Date date = new Date()

我不想更改我所有应用程序中的代码(逐行)

我正在考虑通过添加一些配置来更改日期,而不是通过更改现有代码。

共有2个答案

江煜
2023-03-14

大多数java对象都能很好地相互配合。我假设您正在其中一个类中存储服务器时间。有一个简单的函数可以在LocalDate中添加年份。下面是在给定的服务器时间一年后我要做的事情。

LocalDate serverDate = LocalDate.of(2022, 2, 7);
System.out.println(serverDate);

LocalDate newTestDate = serverDate.plusYears(1);
System.out.println(newTestDate);


2022-02-07
2023-02-07

这些日期对象中的大多数可以通过一个简单的函数转换成另一个对象。希望这回答了你的问题!

宗政兴发
2023-03-14

对于java。时间类,可以传递可选的时钟参数。Clock类提供了几个静态方法来返回警报时钟行为。其中一个支撑着一个固定的力矩,它不会增加。

设置你修改过的时钟。

ZoneId zoneId = ZoneId.of( "Africa/Tunis" ) ;
LocalDate aYearFromToday = LocalDate.now( zoneId ).plusYears( 1 ) ;
ZonedDateTime zdt = aYearFromToday.atStartOfDay( zoneId ) ;
Instant instant = zdt.toInstant() ; 
Clock fixedClock = Clock.fixed( instant , zoneId ) ;

用法。

Instant nowFake = Instant.now( fixedClock ) ;
LocalDate todayFake = LocalDate.now( fixedClock ) ;
 类似资料:
  • 我需要将不断变化的背景添加到我的应用程序中。给我一个解决方案 代码: 错误: 当前Dart SDK版本为2.1.0-dev.5.0。颤振-a2eb050044。 因为carousel 0.1.0需要SDK版本 pub获取失败(1)退出代码1

  • 我需要同步我的android应用程序的时间与服务器。我怎样才能达到同样的目的?或者有什么方法可以改变设备时间。

  • 我们在OKTA SAML SSO与Spring Security的集成方面遇到了很多问题。我们使用Spring Security的扩展来配置身份验证,在HTTP上一切正常,但是当我们尝试使用HTTPS时,身份验证仅在应用程序部署在根()上下文上时才起作用。当我们将上下文更改为其他内容时,它会停止工作,并开始抛出字段错误,有时使用不同的配置,它会出现重定向循环。 以下是我们正在使用的配置: 我们也应

  • 问题内容: 对于单个项目,我想知道在滚动时间内更改的代码行数。 我们正在使用Jenkins和Java,并且我正在寻找某种Jenkins插件或报告,以根据需要提供报告。 目的是确定发现的错误与更改的代码行数之间是否存在关系,更重要的是,要在不同项目之间进行此比较。 问题答案: 我不确定我是否正确理解您的问题,但这是一个主意: 编写一个脚本,该脚本将列出SCM检出中的更改并创建一个文件。添加构建步骤以

  • 以下代码是竞赛中问题陈述的解决方案。给出的时间限制为1s。该代码在5/7个测试用例中正常工作。对于其他情况,超过了时间限制。如何降低下面代码的时间复杂度? 编辑:问题陈述被定义为返回数字n的值或n/2、n/3、n/4之和,以最大值为准。例如,如果输入为24,则可以进一步减少或交换为12 8 6=26,12可以减少为6 4 3=13。8和6不应减少,因为这可能会降低值。最后的答案是13 8 6=27

  • 我有代理反应应用程序的问题。目标:我有两个反应应用,第一个应用在localhost:3000,第二个在localhost:3001。我想要什么?= 然后url将从localhost:3000更改为localhost:3000/app2,第二个react应用程序将显示url localhost:3001中包含的内容。 我导入了http代理中间件库,并创建了src方向文件setupProxy。js和内