小编Gue*_*erd的帖子

如何在不加载JPA中的相关实体的情况下使用外键保存实体?

我有两个实体:

Account {
  @Id
  Long id;
}

Preference {
  ...
  @ManyToOne
  private Account account;
}
Run Code Online (Sandbox Code Playgroud)

保存首选项时,我有accountId,但我没有帐户实体.在这种情况下我应该如何保存偏好?

加载帐户实体并将其设置在首选项上?对我来说,这似乎是错误的数据库之旅.

是否具有可持久的accountId字段并将"帐户"字段设置为只读?同时拥有accountId字段和Account字段似乎是多余的?

使用NamedQuery来保留首选项?我希望只是一般地保存一个没有特殊逻辑的实体.

java orm jpa

15
推荐指数
1
解决办法
1769
查看次数

为什么spring任务调度程序等待上一个任务完成?

我有以下任务调度程序设置:

<bean id="Task" class="foo.bar.Task" />

<bean id="TaskScheduler"
  class="org.springframework.scheduling.concurrent.ThreadPoolTaskScheduler">
    <property name="waitForTasksToCompleteOnShutdown" value="true" />
    <property name="poolSize" value="1000" />
</bean>

<task:scheduled-tasks scheduler="TaskScheduler">
  <task:scheduled ref="Task" method="run" cron="*/5 * * * * *" />
</task:scheduled-tasks>
Run Code Online (Sandbox Code Playgroud)

任务只打印一行并睡10秒钟.通过这种设置,我的期望是任务将每5秒运行一次,无论前一个任务是否已完成执行(即停止休眠).但情况并非如此,任务运行一次15秒(睡眠时间,然后是下次cron被击中).

如何配置此任务,以便任务每5秒运行一次,无论先前的执行是否完成?

java spring

6
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×2

jpa ×1

orm ×1

spring ×1