首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法获取sessionFactory

无法获取sessionFactory
EN

Stack Overflow用户
提问于 2012-04-26 22:22:43
回答 2查看 1.2K关注 0票数 0

我的java项目使用了spring和hibernate,不能获取sessionFactory.当我使用它的时候,它总是空的。配置:

代码语言:javascript
复制
<bean id="sessionFactory"
    class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
    <property name="dataSource">
        <ref bean="dataSource" />
    </property>
    <property name="hibernateProperties">
        <props>
            <prop key="hibernate.dialect">
                org.hibernate.dialect.Oracle9Dialect
            </prop>
        </props>
    </property>
</bean>

<bean id="test" class="test.Test">
    <property name="sessionFactory" ref="sessionFactory"></property>
</bean>`

Test.java的主要代码是

代码语言:javascript
复制
        private SessionFactory sessionFactory;

    public void setSessionFactory(SessionFactory sessionFactory) {
        this.sessionFactory = sessionFactory;
    }
    public SessionFactory getSessionFacoty(){
        return this.sessionFactory;
    }
        public static void main(String[] args) {
    // TODO Auto-generated method stub
    Test test = new Test();
    System.out.println(test.sessionFactory);
}
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-26 22:27:32

您在main方法中的测试实际上并没有使用Spring进行注入。您需要加载applicationContext.xml,然后从中获取test bean。

所以你可以在你的main中做类似这样的事情:

代码语言:javascript
复制
ApplicationContext context =
new ClassPathXmlApplicationContext(new String[] {"applicationContext.xml"});

Test test = (Test)context.getBean("test");
票数 2
EN

Stack Overflow用户

发布于 2012-04-26 22:29:13

您还需要从spring上下文中获取Test对象。加载配置xml并创建上下文,然后从上下文中获取对象

例如:

代码语言:javascript
复制
Test test = (Test) context.getBean("test");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10335426

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档