mybatis配置文件namespace用法总结

本文为博主原创,未经允许不得转载:

   由于在应用过程中,发现namespace在配置文件中的重要性,以及配置的影响,在网上看了很多博客,发现很多人对namespace存在误解,

所以总结一下namespace的用以及个人的理解:

     官网(http://www.mybatis.org/mybatis-3/zh/getting-started.html)的解释如下:

  namespace即空间命名名称,用于区分实现数据持久化的方式。namespace一般绑定对应的文件的全路径,

有三种全路径:namespace绑定实体类的全路径,绑定dao接口的全路径,绑定mapper的sql.xml文件。

第一种:namespace绑定实体类的全路径:

 当namespace绑定的是实体类的全路径时,其实现数据持久化的方式为无代理模式实现数据持久化。

需要手动实现dao层的接口。

<mapper namespace="com.system.pojo.LiveInfo"></namespace>

第二种:namespace绑定dao层接口的全路径:

  当namespace绑定的是dao接口的全路径时,其实现数据持久化的方式为有代理模式实现数据持久化。

即会自动产生代理,自动实现数据的持久化,不需要实现dao层的接口。

<mapper namespace="com.system.dao.LiveInfoDao"></namespace>

第三种:namespace绑定的是mapper接口对应的sql.xml文件是,其也是有代理模式自动实现数据持久化。

但mapper接口对应的sql.xml文件名必须保持一致才能自动实现数据持久化。

<mapper namespace="com.system.sql.LiveInfoMapper"></namespace>

 

posted @ 2018-03-31 11:13  香吧香  阅读(17368)  评论(2编辑  收藏  举报