当使用
mybatis存数据到mysql时,如果事务并没有提交,刚发送insert语句后立马接着一句select,会发现刚插入的那条数据能查出来,但是数据库并没有存在这条数据。
可能的原因:
: mybatis一级缓存,由于并没有提交事务,导致mybatis缓存并没有被清空,所以查询的时候从缓存中查出了数据
: mysql数据库的session会话,mysql自己的会话缓存,别人连接数据库是查询不到的,但是插入数据的那一次会话能查询到
最终的原因:
: 只是因为事务没有提交,只能当时insert的时候紧接着select才能查询到,并不是存在于缓存中,因为并不是查询语句,所以不会缓存数据。
