首先,分析这个问题的原因,归根结底,是事务没有提交,所以,运行了junit以后,显示的是运行成功,但是在数据库却看不到任何变化。原因是没有在spring配置事务管理
解决方法:在applicationContext.xml中加入如下配置:
transaction-manager="transactionManager"/>
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
name="sessionFactory" ref="sessionFactory" />
现在再运行一次就有事务了。
此时发现另一个错误,就是添加了
transaction-manager="transactionManager"/>这一句以后发现
ClassPathXmlApplicationContext ctx = new
ClassPathXmlApplicationContext("classpath:applicationContext.xml");这句代码报错,显示的提示是applicationContext.xml不存在
翻来覆去找资料,发现了下面还有个错误:
NoClassDefFoundError:
org/aopalliance/intercept/MethodInterceptor
好,就从这个入手,查了一下资料,发现spring3.0需要aopalliance-alpha1.jar,所以只能手动下载这个jar包,导入jar发现又有一个错:NoClassDefFoundError:
org/aopalliance/aop/Advice
看了一下刚刚下载那个包,发现找不到advice这个类,换了一个aopalliance.jar删除之前那个,问题解决
总结:遇到问题从最下面的那个错误分析起,那个是最根源的问题,出现找不到类的要看看jar包是否完整。