社区
Java EE
帖子详情
谁能帮我解决一个spring的事务问题,另开贴200分相送
skycncomp
2006-01-20 07:58:46
如题。
qq 283765999
搞了一天了,实在是晕。
...全文
143
6
打赏
收藏
谁能帮我解决一个spring的事务问题,另开贴200分相送
如题。 qq 283765999 搞了一天了,实在是晕。
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
skycncomp
2006-01-20
打赏
举报
回复
搞定了。
1分给楼上的
skycncomp
2006-01-20
打赏
举报
回复
别说的我hql写错了。
已改成
delete from User user where user.id = :id了。
skycncomp
2006-01-20
打赏
举报
回复
还是一样。控制台没有任何输出。
还是没有执行,
如果换成查询语句一切正常.
yaray
2006-01-20
打赏
举报
回复
试试:
SQLQuery sqlquery = session.createSQLQuery("delete from user where id = :id");
sqlquery.setInteger("id", id.intValue());
skycncomp
2006-01-20
打赏
举报
回复
程序可以执行流程正确,没有错误。可以到达最终的页面。
但update的语句好像并没有执行。控制台没有任何输出。db中也没有删掉。
把下面的update语句换成select * from user则完全正常。
如果解决,200分相送。
多谢。
下面给出完整的代码::
controller如下
public class DeleteUserController implements Controller {
private UserDeleteDAO delDao;
public ModelAndView handleRequest(HttpServletRequest request,
HttpServletResponse response) throws Exception {
delDao.deleteUser(new Integer(2));
return new ModelAndView("success.jsp");
}
public UserDeleteDAO getDelDao() {
return delDao;
}
public void setDelDao(UserDeleteDAO delDao) {
this.delDao = delDao;
}
}
实现的bean如下::
public class UserDeleteDAOImpl extends HibernateDaoSupport implements
UserDeleteDAO {
public void deleteUser(final Integer id) {
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session) {
Query query = session.createQuery("delete from user where id = :id");
query.setInteger("id", id.intValue());
System.out.println(id.intValue());
System.out.println("删除");
return null;
}
});
}
}
xml如下::
<?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="urlMappings" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/register.do">register</prop>
<prop key="/deluser.do">deletec</prop>
</props>
</property>
</bean>
<bean id="register" class="com.superover.spring.UserRegisterController">
<property name="userDao">
<ref local="userDao"/>
</property>
</bean>
<bean id="deletec" class="com.superover.spring.DeleteUserController">
<property name="delDao">
<ref local="deleteProxy"/>
</property>
</bean>
<bean id="userDao" class="com.superover.domain.dao.hibernate.UserRegisterDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<bean id="delDao" class="com.superover.domain.dao.hibernate.UserDeleteDAOImpl">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<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://localhost:3306/spring</value>
</property>
<property name="username">
<value>root</value>
</property>
<property name="password">
<value>123</value>
</property>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="mappingResources">
<list>
<value>com\superover\domain\bo\User.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">org.hibernate.dialect.MySQLDialect</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
<property name="dataSource">
<ref local="dataSource"/>
</property>
</bean>
<bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory">
<ref local="sessionFactory"/>
</property>
</bean>
<bean id="deleteProxy" class="org.springframework.transaction.interceptor.TransactionProxyFactoryBean">
<property name="transactionManager" ref="transactionManager"/>
<property name="target" ref="delDao"/>
<property name="transactionAttributes">
<props>
<prop key="delete*">PROPAGATION_REQUIRED</prop>
</props>
</property>
</bean>
</beans>
skycncomp
2006-01-20
打赏
举报
回复
msn:: skycncomp@gmail.com
Spring
事务
和
事务
的传播机制
Spring
事务
和
事务
的传播机制
spring
事务
面试题
本地
事务
通过 ACID 保证...例如,MySQL
事务
处理使用到 begin 开始
一个
事务
,rollback
事务
回滚,commit
事务
确认。这里,
事务
提交后,通过 redo log 记录变更,通过 undo log 在失败时进行回滚,保证
事务
的原子性。
Spring
相关
问题
及答案
Spring
是
一个
开源的Java企业级开发框架,由Rod Johnson于
200
3年创建。它提供了一套全面的编程和配置模型,用于构建现代化的基于Java的企业应用程序。
Spring
框架的核心是IoC(Inversion of Control,控制反转)和AOP...
分布式
事务
及
解决
方案
分布式
事务
1 微服务化带来的分布式
事务
问题
开发当中真实场景: 首先,设想
一个
传统的单体应用(Monolithic App),通过 ...此时,每
一个
服务内部的数据一致性仍由本地
事务
来保证。而整个业务层面的全局数据一致性要如
spring
的
事务
管理有几种方式实现,如何实现
就是把Hibernate用到的数据源Datasource,Hibernate的SessionFactory实例,
事务
管理器HibernateTransactionManager,都交给
Spring
管理。 那么再没整合之前Hibernate是如何实现
事务
管理的呢? 通过ServletFilter实现...
Java EE
67,549
社区成员
225,860
社区内容
发帖
与我相关
我的任务
Java EE
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
复制链接
扫一扫
分享
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章