我在做ssh项目中,用了spring的getHibernateTemplate().find()方法,返回一个List,但是总提示我是null,这是为什么呢,怎么解决
这是我的配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://127.0.0.1:3306/renwenzhi</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>wti</value>
</property>
</bean>
<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.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/po/Student.hbm.xml</value>
</list>
</property>
</bean>
<bean id="userdao" class="com.dao.Dao">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
<property name="allowCreate">
<value>true</value>
</property>
</bean>
</beans>
这是我的配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd"><beans>
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName">
<value>com.mysql.jdbc.Driver</value>
</property>
<property name="url">
<value>jdbc:mysql://127.0.0.1:3306/renwenzhi</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>wti</value>
</property>
</bean>
<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.MySQLDialect
</prop>
</props>
</property>
<property name="mappingResources">
<list>
<value>com/po/Student.hbm.xml</value>
</list>
</property>
</bean>
<bean id="userdao" class="com.dao.Dao">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<bean id="hibernateTemplate" class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory">
<ref bean="sessionFactory"/>
</property>
<property name="allowCreate">
<value>true</value>
</property>
</bean>
</beans>
解决方案 »
- jsp中使用bean的疑惑
- 谁能比较简单的给介绍下Hibernate
- 急,急,怎样得到两个地区之间的距离(通过google)
- B/S系统集成C/S系统的问题
- 用idea 向jboss 中部署项目报错报错
- com.sun.image.codec.jpeg.ImageFormatException 导入问题
- 怎么解决这个错误?error:java.net.SocketException: Connection reset by peer: socket write error我用的是tomcat连接池
- encoded link 和普通的链接,有什么不同
- Tomcat4.0.6与IIS的融合问题 ???
- 为什么我的java程序能够联接数据库而jsp程序不能联接数据库?
- GIS 到底是什么
- 如何实现window.open()功能????
调用DAO的时候,不能通过NEW 调用,也就是不能类似这样TAdminDAO admindao = new TAdminDAO();
而需要调用配置文件。类似下面这样
private ApplicationContext ctx = new FileSystemXmlApplicationContext(
"../webapps/helloworld/WEB-INF/classes/applicationContext.xml");
TAdminDAO admindao = (TAdminDAO) ctx.getBean("TAdminDAO");
或者:
private ApplicationContext ctx = null;
if(ctx == null){
ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletActionContext.getServletContext());
}
ctx.getBean(beanName); 你可以看下这篇帖子
http://www.javaeye.com/topic/15057
或者你可以写一个测试程序测试一下:ApplicationContext cx=new FileSystemXmlApplicationContext("applicationContext.xml的路径");
userDAO userdao=(AdminDAO)cx.getBean("userdao");