Mybatis 的 XML Mapper 文件中,不同的 XML 映 射文件,id 是不是可以重复?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Mybatis 的 XML Mapper 文件中,不同的 XML 映 射文件,id 是不是可以重复?相关的知识,希望对你有一定的参考价值。
参考技术A 不同的 XML Mapper 文件,如果配置了 "namespace" ,那么 id 可以重复;如果没有配置 "namespace" ,那么 id 不能重复。毕竟"namespace" 不是必须的,只是最佳实践而已。原因就是,namespace + id 是作为 Map 的 key使用的。如果没有 "namespace",就剩下 id ,那么 id 重复会导致数据互相覆盖。如果有了 "namespace",自然 id 就可以重复,"namespace"不同,namespace+ id 自然也就不同。
MyBatis的Mapper.xml文件中没有提示怎么办?
MyBatis是一款优秀的持久层框架,给开发提供了不少的便捷,但在xml文件中编写MySQL代码时,会遇到标签没有提示的情况,怎么来解决这个问题呢?
1、给mapper文件添加上验证头部:
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
上述代码中,包含了一个网址请求,在联网的状态下,会自动从该网址中获取提示所需要的dtd文件,就会有提示了,但此方法在在不联网或者网络状态不佳的情况下依然无法获得提示,我们可以通过给开发工具添加离线版的dtd文件来解决这个问题。
2:、给开发工具添加离线dtd文件:
(1)按ctrl键,然后鼠标点击这个链接:
(2)从浏览器下载目录中复制出下载好的dtd文件,放到常用的文件夹中:
(3)复制xml文件里的头部链接:
(4)点击顶部导航栏Window-->Preferences
(5)点击Add,添加dtd文件:
(6)点击File System... 然后找到dtd文件,选择并打开:
(7)将Key type值改成URI
(8)将第三步时复制的xml里的链接粘贴到Key框:
(9)允许并关闭:
关闭xml文件,再重新打开,就会发现在未联网的情况下也能有提示啦
以上是关于Mybatis 的 XML Mapper 文件中,不同的 XML 映 射文件,id 是不是可以重复?的主要内容,如果未能解决你的问题,请参考以下文章