MyBatis 有两种配置文件:核心配置文件(mybatis- config.xml)和 SQL 映射文件(mapper.xml)。这两种配置文件都需要手动引入各自的 DTD 文件(mybatis-3- config.dtd和 mybatis-3-mapper.dtd),并在 eclipse 中进行相应配置,否则在编写配置文件的时侯,节点元素以及属性等不能自动联想,没有自动提示功能。

1、找到 DTD 文件的位置

  这两个 DTD 文件在 mybatis-3.2.2.jar 里,以压缩包形式解压 mybatis-3.2.2.jar ,在解压后的 org\apache\ibatis\builder\xml 目录中找到两个 DTD 文件。将这两个文件复制出来,放置在一个统一的位置(如:D:\DTD\)下。

 2、新增 XML Catalog

  打开 eclipse 的 windows-->preferences--->XML-->xml catalog  ,如下图所示

  选择 XML Catalog,在右侧窗口选中 User Specified Entries,单击 “Add” 按钮,弹出如下图所示界面,并添加相关内容。

  

  Location:是指 dtd 文件的目录,单击 “File System”按钮,选择 DTD 文件位置(D:\DTD\mybatis-3-config.dtd)或者可以选择把该 DTD 文件放入本项目工程中的某一固定位置,单击 “Workspace” 按钮进行引入。

  Key type:此处有两种方式,可以选择 Public ID(默认)也可以选择 URI 。

  

  Key:与 Key type 的选择对应,对应 DTD 的 Public ID 或者 URI

     

     若 Key type 选择 Public ID:则 key 配置 Public ID

          mybatis-3- config.dtd -- Public ID  :-//mybatis.org//DTD Config 3.0//EN

          mybatis-3-mapper.dtd -- Public ID :-//mybatis.org//DTD Mapper 3.0//EN

     勾选 Alternative  web  address,添加 DTD 文件的 URI。

         mybatis-3- config.dtd   URI:http://mybatis.org/dtd/mybatis-3-config.dtd

           mybatis-3-mapper.dtd   URI:http://mybatis.org/dtd/mybatis-3-mapper.dtd

     

    说明:在配置了此方式的 DTD 情况下,有利于创建 Mybatis 的核心配置文件和 SQL 映射文件。(推荐使用)

    

    若 Key type 选择 URI:则 key 配置 URI

          mybatis-3- config.dtd   URI:http://mybatis.org/dtd/mybatis-3-config.dtd

          mybatis-3-mapper.dtd   URI:http://mybatis.org/dtd/mybatis-3-mapper.dtd

    最后点击 ok  保存配置即可。

DTD 文件的引入的更多相关文章

  1. Eclipse引入DTD文件

    首先,去MyBatis官方网站下载dtd文件.(本篇本章只演示如何引入config.dtd文件,mapper.dtd同操作) 打开Eclipse,选择Window下面的Preferences选项. 左 ...

  2. MyBatis学习总结(三)---映射文件及引入方式

    MyBatis的强大,主要原于它强大映射功能,相对其它的jdbc,使用MyBatis,你会发现省掉很多代码.上一篇已经简单做出一个实例.今天就了解一下MyBatis的映射xml文件. 了解上一篇fri ...

  3. 作业:xml练习2-写.xml的外部约束文件(dtd文件)

    写外部DTD: 步骤: 1.在srd目录下新建DTD文件,并命名为:scores.dtd 2.在练习1的基础上,剪切练习1的DTD内部声明.粘贴到一个新建的DTD文件中.剪切之后的地方换上:包含外部D ...

  4. Hibernate3的hbm文件错误引用dtd文件导致项目无法启动问题处理

    错误信息: org.hibernate.InvalidMappingException: Could not parse mapping document from resource /***/*** ...

  5. 我来说说XML文件中的xmlns、xmlns:xsi和xsi:schemaLocation、dtd文件的具体含义

    文章摘自:https://yq.aliyun.com/articles/40353               http://www.cnblogs.com/zhao1949/p/5652167.ht ...

  6. 配置Struts.xml DTD文件报错

    报错信息为: The content of element type "struts" must match "((package|include|bean|  cons ...

  7. eclipse中手动导入DTD文件的方式

    DTD一般应用在应用程序中定义数据交换类型的文档,一般用在xml配置文件中,有些时候在eclipse中并不能加载一些提示,这个时候需要手动导入,导入方法如下: 1.首先根据声明的网址下载.dtd的文件 ...

  8. java jar包解析:打包文件,引入文件

    java jar包解析:打包文件,引入文件 cmd下: jar命令:package包打包 javac命令:普通类文件打包 Hello.java: package org.lxh.demo; publi ...

  9. 什么是dtd文件,为什么需要dtd

    DTD为英文Document Type Definition,中文意思为"文档类定义".DTD肩负着两重任务:一方面它帮助你编写合法的代码,另一方面它让浏览器正确地显示器代码.也许 ...

随机推荐

  1. Android默认系统声音/大小修改及配置【转】

    本文转载自:http://blog.csdn.net/a8316124/article/details/60574859 在做定制需求的时候,需要修改系统通知的声音,将其禁用掉,避免第三方应用发送通知 ...

  2. 自定义的Notification

    要创建一个自定义的Notification,可以使用RemoteViews.要定义自己的扩展消息,首先要初始化一个RemoteViews对象,然后将它传递给Notification contentVi ...

  3. 深入理解JMM(Java内存模型) --(六)final

    与前面介绍的锁和volatile相比较,对final域的读和写更像是普通的变量访问.对于final域,编译器和处理器要遵守两个重排序规则: 在构造函数内对一个final域的写入,与随后把这个被构造对象 ...

  4. MogileFS的实现和bug解决

    MogileFS的实现 准备三个主机: centos7.1:tracker节点.database节点.storage节点:192.168.213.251 centos7.2.centos7.3:sto ...

  5. 堆和栈的区别【以java为例潜入分析】

     Java的堆是一个运行时数据区,类的对象从中分配空间,这些对象通过new等指令建立. 堆是由垃圾回收来负责的,堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动 ...

  6. bzoj 1734: [Usaco2005 feb]Aggressive cows 愤怒的牛【二分+贪心】

    二分答案,贪心判定 #include<iostream> #include<cstdio> #include<algorithm> using namespace ...

  7. RabbitMQ学习之Work Queues(2)

    目录: 轮询调度(Round-robin dispatching):即依次分配分配任务给worker. 消息答复(Message acknowledgement):在consumer处理完之后,进行消 ...

  8. python中socket编程

    一.网络协议 客户端/服务器架构 1.硬件C/S架构(打印机) 2.软件C/S架构(互联网中处处是C/S架构):B/S架构也是C/S架构的一种,B/S是浏览器/服务器 C/S架构与socket的关系: ...

  9. centos 安装sysbench

    安装sysbench 下载并且解压 shell> wget https://github.com/akopytov/sysbench/archive/1.0.zip -O "sysbe ...

  10. thinkphp5 分页 paginate

    tp5分页带参数的时候,用到 paginate 后面的几个参数 paginate有三个参数, 第一个必须表是每页分多少个[如果配置文件中设置了,可以不用] 第二个参数表是的是简洁分页,如果为true, ...