gpt4 book ai didi

Spring Web应用程序在启动时从数据库初始化

转载 作者:行者123 更新时间:2023-12-02 10:00:38 25 4
gpt4 key购买 nike

Spring 3.1 + Tomcat

我这里有一些设计问题:

数据库中已指定一组类别。这些类别可以被认为是全局的,因为它们可以在整个网络应用程序中使用。我想做的是在服务器启动时读取这些类别并用 Java 填充某种类型的集合。只需要在启动时从数据库中读取一次,将其视为一种初始化。

我能想到的两个选择:

1)我应该使用非延迟初始化的 bean 吗?

2)修改web.xml?

我不太确定首选方法是什么,如果您能提供有关如何执行您推荐的方法的说明,我们将不胜感激。谢谢!

最佳答案

您提供的选项是最常用的:

  1. 将单例非惰性 bean 与用 @PostConstruct 注解的方法一起使用(但请注意 @Transactional might not work )。您可以拥有多个具有此类初始化例程的 bean。

  2. 扩展org.springframework.web.context.ContextLoaderListener并在web.xml中使用它。我发现这个解决方案不太优雅,而且还提倡糟糕的编程风格(通过调用 super 来扩展基类)

关于Spring Web应用程序在启动时从数据库初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7082594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com