[code="java"]
@Service
public class OrderServiceImpl implements OrderService {
@Autowired
OrderDao orderDao;
public void methodA{
this.methodB();
System.out.println("****");
}
@Transactional
public void methodB{
Order order = new Order();
order.set(.....);
orderDao.save(order);
}
}
[/code]
这里面有个问题,其他类调用methodA,为什么在A方法中保存order,而没有直接insert
而是System.out.println("****")之后才insert呢?
请问我应该怎么在之前就insert到数据库呢?
是hibernate不会把sql语句直接提交给数据库,而是先放在hibernate的缓存中等事务commit的时候一起提交,这样就导致sql语句执行的顺序与程序不一致
[quote]请问下,我应该如何来配置或者调整来达到我想要的结果呢? [/quote]
正常的java 程序就是 [color=red]顺序执行[/color]的!
也就是你想要的效果!
可能 hibernate做了些手脚吧! 你可以试试save完 立即刷新缓存或者不是有缓存