gpt4 book ai didi

java - 从非托管bean访问DAO服务方法

转载 作者:行者123 更新时间:2023-12-01 23:59:21 26 4
gpt4 key购买 nike

我正在使用 Spring 3 和 Hibernate 4

如何在非 ManagedBean 中使用以下内容

@Inject 
EmployeeService employeeService

或者,如果我想访问 DAO 方法,我必须将其设为 ManagedBean

@Named("mymanagedbean")
@ViewAccessScoped

我有一些 Converter 类,为了访问 DAO 服务方法,我必须将其用作 ManagedBean,即使它们不是 ManagedBean。

调用 DAO 服务方法的最佳方法是什么?

谢谢

最佳答案

您将需要实现 Spring 接口(interface) ApplicationContextAware然后设置ApplicationContext。然后你需要提供静态方法来获取bean实例。

public class SpringApplicationContext implements ApplicationContextAware {

private static ApplicationContext CONTEXT;

public void setApplicationContext(ApplicationContext context)
throws BeansException {
CONTEXT = context;
}
public static Object getBean(String beanName) { ...}
public static <T> T getBean(Class<T> arg0) {...}

然后在您的非托管 bean 中您可以调用 SpringApplicationContext.getBean方法通过传入EmployeeService.class作为参数或 bean 名称作为参数。

关于java - 从非托管bean访问DAO服务方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15128228/

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