xml配置了sessionFactory,也在继承了HibernateDaoSupport类的bean中注入了此对象·可还显示此对象为空 30

--------------------------sessionFactory对象的xml配置<beanid="sessionFactory"class="org.sp... --------------------------sessionFactory对象的xml配置

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource" ref="dataSource"></property>
<property name="mappingResources">
<list>
<value>com/shopping/domain/UserAdmin.hbm.xml</value>
<value>com/shopping/domain/UserInfo.hbm.xml</value>
<value>com/shopping/domain/UserType.hbm.xml</value>
<value>com/shopping/domain/Order.hbm.xml</value>
<value>com/shopping/domain/OrderType.hbm.xml</value>
<value>com/shopping/domain/OrderInfo.hbm.xml</value>
<value>com/shopping/domain/WareInfo.hbm.xml</value>
<value>com/shopping/domain/WareType.hbm.xml</value>
<value>com/shopping/domain/Images.hbm.xml</value>
<value>com/shopping/domain/WareImages.hbm.xml</value>
<value>com/shopping/domain/WareMessage.hbm.xml</value>
<value>com/shopping/domain/Reply.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<value>
hibernate.dialect=org.hibernate.dialect.Oracle10gDialect
hibernate.hbm2ddl.auto=update
show_sql=true
current_session_context_class=thread
</value>
</property>
</bean>
--------------------------------继承HibernateDaoSupport类的类bean
<!-- 配置dao层对象 -->
<bean id="select" class="com.shopping.dao.impl.Select">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>

--------------------------继承HibernateDaoSupport类的代码
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;

public class Select extends HibernateDaoSupport{
public void a(){
System.out.println(super.getSessionFactory()==null);
}
测试方法
public static void main(String [] args){
Select s = new Select();
s.a();
}
如果解决我还加分谢谢
而且启动tomcat无异常·并且数据库的表也生成了
展开
 我来答
felix2009zjz
2013-01-28
知道答主
回答量:21
采纳率:0%
帮助的人:18.8万
展开全部
你虽然书写了Spring配置文件,但是你的测试代码当中根本没有使用到Spring框架。Spring不认识new Select(),因此Spring不会做任何事情,不会为Select的实例注入sessionFactory。
使用楼上mlovewt的方式,你才能够切入Spring,才能让Spring帮助你完成依赖注入。
追问
这是为了测试的·我是web项目·原来不New一样空指针··最开始是没这个mian方法的大哥···!!!
追答
先研究清楚:你的Web项目是如何使用Spring的。或者项目打包发过来看看,当然,如果可以的话~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
看箩宁馆za
2013-02-02 · TA获得超过684个赞
知道小有建树答主
回答量:450
采纳率:0%
帮助的人:94.2万
展开全部
1.你怎么没写读取XML文件的代码啊,
你直接new的select和你的XML文件配置的就没有关系了
正确的做法是:先读取XML文件
再getBean方法获取XML配置的select实例
2.spring推荐面向接口编程,希望养成好的习惯
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
起啥名c9
2013-01-28 · TA获得超过129个赞
知道小有建树答主
回答量:290
采纳率:0%
帮助的人:123万
展开全部
你都用spring了,就不要再new对象了,要加载spring配置文件,从里面getBean();XmlBeanFactory context=new XmlBeanFactory(new ClassPathResource("beans.xml"));
HelloWorld hw = (HelloWorld)context.getBean("helloworld");
更多追问追答
追问
不明白啊- -大哥·能详细点么
追答
spring注入,是spring管理对象的初始化,对象在容器启动的时候会进行实例化。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友bd04ae2
2013-01-28 · TA获得超过125个赞
知道答主
回答量:139
采纳率:0%
帮助的人:69.7万
展开全部
用自动装配多好。。
追问
不会- -求解
追答
在 spring的xml文件 最上面的节点里面添加一个 context 以及下面的说明  然后在后面写上你要按照哪种方式让spring帮你注入 注入,有byName、和 byType两种。一般是用的byName 
在 context-scan里面写上你需要让spring帮你管理的类的包名,并且在 实体类里面写上注释
@compent 我找找有没有图片给你参考的。你上面用的注入方式,如果要依赖spring的注入的话,要先读取一次XML文件 而不是直接 new applicationContext app = new pathclassxml.....("/application.xml"); app.getBean("select").a();这样调用
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式