请教大伙个问题,我现在有两个项目,用的都是ssh框架,事务是用spring管理。
在其中一个项目中select loginname from users where loginname ='test' for update 后,然后处理,在未处理完且事务未结束的时候,另外一个项目同样调用这个sql,然后修改记录成功了,请问我是不是哪里配置出问题了,还是说mysql中使用select for update的必须针对InnoDb,并且是在一个事务中,才能起作用?谢谢
在其中一个项目中select loginname from users where loginname ='test' for update 后,然后处理,在未处理完且事务未结束的时候,另外一个项目同样调用这个sql,然后修改记录成功了,请问我是不是哪里配置出问题了,还是说mysql中使用select for update的必须针对InnoDb,并且是在一个事务中,才能起作用?谢谢
SessionFactory sessionFactory=(SessionFactory)ctx.getBean("sessionFactory");
Session session = sessionFactory.openSession();
Transaction transaction=session.beginTransaction();
transaction.begin();
Users users=(Users)session.get(Users.class, "test01");
System.out.println(users.getCredit());
users.setCredit(users.getCredit()+100.00);
session.update(users);
System.out.println(users.getCredit());
transaction.commit();我在这句话设置了断点System.out.println(users.getCredit());,然后运行另外一个程序,但是另外一个程序仍然可以更新数据,这是为啥
是这句