首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2EE开发 >

spring+hibernate整合时遇到一有关问题:getHibernateTemplate().delete(object)删除不了数据

2011-12-26 
spring+hibernate整合时遇到一问题:getHibernateTemplate().delete(object)删除不了数据请求高手帮助,谢谢

spring+hibernate整合时遇到一问题:getHibernateTemplate().delete(object)删除不了数据
请求高手帮助,谢谢 …… 配置如下:
Dept.hbm.xml

XML code
<hibernate-mapping>    <class name="com.itcast.entity.Dept" table="dept" schema="dbo" catalog="demo"  lazy="false">        <id name="deptid" type="java.lang.String">            <column name="deptid" length="50" />            <generator class="assigned" />        </id>        <property name="detname" type="java.lang.String">            <column name="detname" length="50" not-null="true" />        </property>        <property name="descrip" type="java.lang.String">            <column name="descrip" length="50" />        </property>        <set name="students" inverse="true">            <key>                <column name="deptno" length="50" not-null="true" />            </key>            <one-to-many class="com.itcast.entity.Student" />        </set>    </class></hibernate-mapping>

Student.hbm.xml
XML code
<hibernate-mapping>    <class name="com.itcast.entity.Student" table="student" schema="dbo" catalog="demo">        <id name="id" type="java.lang.String">            <column name="id" length="50" />            <generator class="assigned" />        </id>        <many-to-one name="dept" class="com.itcast.entity.Dept" fetch="select">            <column name="deptno" length="50" not-null="true" />        </many-to-one>        <property name="name" type="java.lang.String">            <column name="name" length="50" not-null="true" />        </property>        <property name="sex" type="java.lang.String">            <column name="sex" length="2" not-null="true" />        </property>        <property name="birthday" type="java.util.Date">            <column name="birthday" length="23" not-null="true" />        </property>    </class></hibernate-mapping>


applicationCotext.xml

XML code
<beans    xmlns="http://www.springframework.org/schema/beans"    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">    <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">        <property name="driverClassName"><value>net.sourceforge.jtds.jdbc.Driver</value></property>        <property name="url"> <value>jdbc:jtds:sqlserver://localhost:1433;databasename=demo</value></property>        <property name="username"><value>sa</value></property>        <property name="password"><value>sa</value></property>         </bean>    <bean id="sessionFactory"        class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">        <property name="configLocation"            value="classpath:hibernate.cfg.xml">        </property>    </bean>        <bean id="transactionManager"        class="org.springframework.orm.hibernate3.HibernateTransactionManager">        <property name="sessionFactory">            <ref local="sessionFactory"/>        </property>    </bean>        <bean id="Dao" class="com.itcast.dao.Dao">      <property name="sessionFactory" ref="sessionFactory"></property>    </bean></beans> 



Java code
ApplicationContext ac=new ClassPathXmlApplicationContext("applicationContext.xml");        Dao dao=(Dao)ac.getBean("Dao");        Student student=(Student)dao.get("072118130145");        dao.delete(student);

现在的问题是:调用delete方法后,到数据库里看一下,数据居然还在,并没有删除。很郁闷。

请求高手指点……

[解决办法]
进行删除,数据库没变 就是说明你并没有使用事务,所以才会回滚
看看你是不是忘记了
[解决办法]
看看你的实体类有没有Override hashcode()和equals()
[解决办法]
Student student=(Student)dao.get("072118130145");
 你在这里打印看看是否有对应到实体对象 student.getName()比如
[解决办法]
你看看你的sql语言有没有生成,如果有生成那说明你没有提交,又回滚了。
[解决办法]
这个问题是出现在你的事物那边,你的事物应该没有提交,所以才会这样子.请检查看看吧
[解决办法]
applicationCotext.xml
中没有配置事物管理,
虽然有
Java code
 <bean id="transactionManager"        class="org.springframework.orm.hibernate3.HibernateTransactionManager">        <property name="sessionFactory">            <ref local="sessionFactory"/>        </property>  </bean> 

热点排行
Bad Request.