mybatis的namespace
时间: 2023-09-27 20:09:13 浏览: 99
Mybatis框架
在MyBatis中,namespace的作用是实现语句与接口的绑定,通过生成mapper接口代理的方式替代dao层设计。如果要采用面向接口的编程方式,namespace必须为mapper接口的全类名对象。
从源码角度来看,获取代理对象必然要调用configuration.java中的getMapper方法。在getMapper方法中会获取namespace属性,并将当前namespace设置为mapper接口的全类名对象。如果namespace不是mapper接口的全类名对象,则会报错。
另外,MyBatis还包含两级缓存:一级缓存和二级缓存。一级缓存是默认开启的,它是SqlSession级别的缓存,也称为本地缓存。而二级缓存需要手动开启和配置,它是基于namespace级别的缓存。通过实现Cache接口,我们可以自定义二级缓存。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* [mybatis中的namespace及mapper](https://blog.csdn.net/biliangliang/article/details/84034262)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
- *3* [Mybatis学习20 缓存](https://blog.csdn.net/technologyleader/article/details/122306246)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文