在进行原项目的基础上开发功能的时候,出现了hibernate数据库与前台无法交互的问题。
一步一步寻找答案:
1、Struts.xml映射关系是否正确;
2、applicationContext.XML类似的配置是否正确;
<bean id="userAction" class="com.action.UserAction" scope="prototype">
<property name="userDAO">
<ref bean="TUserDAO" />
</property>
<property name="stuDAO">
<ref bean="TStuDAO" />
</property>
</bean>
3、以上检查均无误后,开始作调试,发现DAO层无法通过applicationContext.xml自动注入,终于找到问题所在,但不知为何无法自动注入,所以加了手动注入的方式在实例DAO的时候:
String xmlRealPath = ServletActionContext.getServletContext().getRealPath("/WEB-INF/applicationContext.xml");//手动注入
ApplicationContext ac = new FileSystemXmlApplicationContext(xmlRealPath); //手动注入
TUserDAO userDAO =(TUserDAO)ac.getBean("TUserDAO");
虽然没有直接找出为何无法自动注入,但间接的解决了问题。
————————————————————————
哪位高手有遇到过无法自动注入的问题,并顺利解决了,请多多指教!!