您声明sessionFactory依赖项:
<bean id="cityDao" > <property name="sessionFactory" ref="sessionFactory"></property></bean>
然后您还有:
@Autowiredprivate SessionFactory sessionFactory;
尝试删除
@Autowired注释,因为如果使用XML配置,则多余。
仅仅因为添加了sessionFactory,并不意味着Spring也可以自动管理Hibernate Sessions。
您还需要添加:
<bean id="transactionManager" > <property name="sessionFactory" ref="sessionFactory" /></bean>
以及:
<tx:annotation-driven/>
现在,你还需要添加
@Transactional到您的 保存 例行:
@Transactionalpublic void save(City city){ this.sessionFactory.getCurrentSession().save(city);}


