mybatis中“mapper 的namespace”有什么用?

如题所述

    在mybatis中,映射文件中的namespace是用于绑定Dao接口的,即面向接口编程。

    当你的namespace绑定接口后,你可以不用写接口实现类,mybatis会通过该绑定自动帮你找到对应要执行的SQL语句。

    命名空间(Namespaces)在之前版本的 MyBatis 中是可选的,容易引起混淆因此是没有益处的。现在的命名空间则是必须的,目的是希望能比只是简单的使用更长的完全限定名来区分语句更进一步。

    命名空间使得你所见到的接口绑定成为可能,尽管你觉得这些东西未必用得上,你还是应该遵循这里的规定以防哪天你改变了主意。出于长远考虑,使用命名空间,并将它置于合适的 Java 包命名空间之下,你将拥有一份更加整洁的代码并提高了 MyBatis 的可用性。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-04-21
比如你使用了mybatis的二级缓存,进行增删改操时作会清空当前命名空间中已缓存的数据。也就是说,缓存机制是以命名空间为单位进行管理的。
相似回答