mysql namespace_SQL映射文件中namespace命名空间的作用

一.便于区分相同id的SQL操作

当多个xxxMapper.xml文件中的id值相同时,在使用SqlSession操作数据库时,mybatis就无法分辨我们要调用的哪个id的操作。在调用时采用“namespace.id”的方式便有利于区分。

举例如下:

xxxMapper.xml

sql语句

yyyMapper.xml

sql语句

SqlSession调用:

sqlSession.selectList("AAA.xxx");

//或是

sqlSession.selectList("BBB.xxx");

二. “接口-SQL映射”功能中namespace对应包名和接口名

前面写代码时我们使用sqlSession.selectList("SQLID"),完全是在面向String字符串类型的SQLID编程,虽然能达到操作数据库的目的,但这种代码写法是不规范的。理想中规范的写法是面向接口编程。MyBatis提供了“接口-SQL映射”的功能。

还记得使用MyBatis Generator工具操作MySQL数据库示例中生成的xxxMapper.xml与xxxMapper.java文件,两者是对应的,这就是“接口-SQL映射”。

两者对应关系示例如下:

//namespace对应包名和接口名

//xxxMapper.xml

//xxxMapper.java

package mapping;

public interface UserinfoMapper {}

//id对应方法名,parameterType对应参数类型

//xxxMapper.xml

//xxxMapper.java

int insert(Userinfo record);

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值