postconstruct相关内容
在下面的情况下,Spring是否保证‘sleepInterval’和‘Business Logic’实例变量的可见性? import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import javax.annotation.PostCo
..
我有一个@ViewScope ManagedBean 和一个@PostConstruct 初始化方法.创建新实例时会调用此方法,但也会在每次 ajax 调用时调用.为什么会这样? 在 AJAX 调用中,init-Method 被调用并执行,但没有任何变化可见.例如,如果我更改了 init-Method 中的一个属性,则这仅在实例化时可见,而对 AJAX 调用不可见.对于 AJAX 调用,@V
..
我有一个 product.xhtml 和一个 ProductBean.我使用/product/{id} 来访问产品,所以我在 product.xhtml 中有一个 viewParam 值=ProductBean.id.问题是在 bean 内部我使用了一个带有 PostConstruct 注释的 init 函数来填充产品的细节.为此,我需要 id 来调用外部函数.我猜虽然 init 在 view
..
我使用 JSF 2.0 和 GlassFish 3.0. 我有以下托管 Bean: @ManagedBean@RequestScoped公共类概览控制器{私人列表活动列表;@PostConstruct公共无效初始化(){System.out.println("=> OverviewController - init() - enter");System.out.println("=
..
在 @PostConstruct 文档中它说注释方法: “该方法不得抛出已检查的异常." 人们将如何处理例如可以在这种方法中抛出的 IOException?只是将它包装在一个 RuntimeException 中,让用户担心对象的错误初始状态?或者@PostConstruct 是验证和初始化注入依赖项的对象的错误位置? 解决方案 是的,将其包装在运行时异常中.最好是更具体的东西
..
我在页面上使用数据表并使用绑定属性将其绑定到我的支持 bean.这是我的代码:- Facelet 标题
..
在支持 bean 的@PostConstruct 方法中,我调用了一个 EJB,它可能会返回一些我想通过 p:messages 在页面上显示的消息.但是,即使我添加了 FacesMessages,例如FacesContext.getCurrentInstance().addMessage(...), p:messages 没有被 FacesMessages 更新. 如果我改为在页面上的操作上
..
与使用 @PostConstruct 注释相比,什么时候应该使用 f:viewAction 或 preRenderView 事件来初始化页面的数据?使用一种或另一种的基本原理是基于支持 bean 的范围类型,例如如果支持 bean 是 @RequestScoped,那么会选择使用 f:viewAction 或 preRenderView 而不是 @PostConstruct在呈现视图之前初始化您的
..
我想写下与@PostConstruct 一起使用的方法的名称.但是我发现 AOP 无法“绕过" PostConstruct 方法.有没有什么方法可以将 AOP 与 PostConstruct 方法一起使用? 解决方案 试试这个. @Around("@annotation(javax.annotation.PostConstruct)")public void myAdvice(Proc
..
我有以下课程: @RepositoryA类{公共无效方法1(){...}}@成分B 类实现 C {@自动连线@懒惰的私人 A;公共无效方法2(){a.method1();}}@成分D类{@自动连线私人列表C;@PostConstruct公共无效方法3(){//迭代列表 c 并调用 method2()}} 假设 Spring 初始化 bean 如下: 1. 创建第一个 bean B.在创
..
我有以下课程: @RepositoryA类{公共无效方法1(){...}}@成分B 类实现 C {@自动连线@懒惰的私人 A;公共无效方法2(){a.method1();}}@成分D类{@自动连线私人列表C;@PostConstruct公共无效方法3(){//迭代列表 c 并调用 method2()}} 假设 Spring 初始化 bean 如下: 1. 创建第一个 bean B.在创
..
有工作需要按 cron 计划完成 必须在spring boot应用程序启动时执行与作业中相同的逻辑,因此使用@PostConstruct方法 使用了 Shedlock,因为它计划在多个实例中运行应用程序 问题是:如何让@PostConstruct 方法的逻辑只在一个实例中调用而在其他实例中不调用? 我的代码示例: @Component@AllArgsConstructor公共类
..
我是在学习,所以这可能是一个愚蠢的问题,但我找不到任何答案. 我有一个JSF应用程序,与简单的JDBC一起使用时效果很好. 以"domain.xhtml"为例,其中有一个表列出了"DomainController" bean中的元素.一切都很好,然后我们改用了JPA.该控制器必须使用服务,因此将其声明为@Component并从那里包含(@Autowired)服务.除了我的所有JSF注入
..
我有一个在Java 5上运行的Spring webapp.这是 是我的applicationContext.xml文件:
..
MyDao类具有通过Hibernate SessionFactory执行全部持久性任务的方法,它工作正常. 如上所述,我在MyService中注入了MyDao,但是在注入MyDao之后(通过调试可以看到MyDao注入)调用@PostConstruct init()方法时,会得到下一个Hibernate异常: org.hibernate.HibernateException:未找到当前线
..
我正在尝试更新旧的Spring应用程序.具体来说,我正在尝试将所有bean从旧的xml定义的表单中拉出,并将它们拉成@SpringBootApplication格式(同时大幅减少了已定义的bean的总数,因为其中许多不需要豆子).我当前的问题是我无法弄清楚如何使ServletContext可用于需要它的bean. 我当前的代码如下: package thing; import stu
..
我的课程如下: public class UserAuthenticator { private static UserAuthenticator authenticator = @Inject private UserRepository userRepository; @PostConstruct public void init() {
..
我想在一个配置类中有多个@PostConstruct注释方法,应根据@Profile进行调用.您可以想像这样的代码片段: @Configuration public class SilentaConfiguration { private static final Logger LOG = LoggerFactory.getLogger(SilentaConfiguration.c
..
我想写与@PostConstruct一起使用的方法的名称.但是我发现AOP无法“绕过" PostConstruct方法. 有什么方法可以将AOP与PostConstruct方法一起使用? 解决方案 尝试一下. @Around("@annotation(javax.annotation.PostConstruct)") public void myAdvice(Proc
..
在 Java的文档页中显示了PostConstruct那 此注释只能注释一种方法 但是我只是尝试使用PostConstruct注释一个独立应用程序的三种方法.没有编译错误,所有这三个错误都可以顺利调用和执行. 那我想念什么?什么样的类可以并且不能存在多个PostConstruct注释? 解决方案 是的,似乎Spring没有遵循此限制.我已经找到了用于处理此注释的代码,该注
..