最近在学习mybatis,在网上查阅资料,并按照别人的范例来测试,总会出一些错误,这里把配置过程中的一些注意事项梳理一下。

一、导包(用eclipse开发)

  1、如果你新建的是普通的project,需要在工程目录下,新建一个文件夹(一般为lib),然后需要手动导包,具体操作是:选中包右键-Build Path-add to Build Path。之前的文件夹不能删除,因为它实际上加载的是这些包的路径。

  2、如果你新建的是web工程,只需要把相关包放到WEB-INF/lib 中即可,它会自动导包,同样lib里的包不能删除。

二、XML文件配置

  1、该配置文件名可以自定义,放置的路径也可以自定义,但是如果你不是放在src的根路径下,比如放在src/config/mybatis.xml,在创建SqlSessionFactory实例时,Resources.getResourceAsReader("config/mybatis.xml"),config前不能加“/”,如果放在src根路径下,这里直接写文件名即可。

  2、配置文件里配置项目是有先后顺序的,依次是:properties,settings,typeAliases,typeHandlers,objectFactory,objectWrapperFactory,plugins,environments,databaseIdProvider,mappers,那个选项不配置,它的位置空出来,但顺序必须遵循,否则会报错。

  3、properties选项,可导入外部以properties结尾的配置文件。通常会将数据库的连接信息放在该配置文件里,这时在配置dataSource时,value=“${driver}”,这种形式,此处driver对应的就是配置文件中driver = com.mysql.jdbc.Driver

  4、在配置mapper时,有几种方式,分别是resource、url、class、package

  resource形式:

  <mappers>  
        <mapper resource="com/tiantian/mybatis/model/BlogMapper.xml"/>  
    </mappers>

  这个路径是你xml映射文件的路径包名+文件名。

  url形式:

  <mappers>

    <mapper url="file:///var/mappers/BlogMapper.xml"/>

  </mappers>

  这个路径对应的是网络上了某个文件,注意file:// 前缀 +路径+文件名

  class形式:

  <mappers>

     <mapper class="org.mybatis.builder.BlogMapper"/>

   </mappers>

  这个class实际上是接口,写的是接口的全名。

  package形式:

  <mappers>

     <package name="org.mybatis.builder"/>

   </mappers>

  5、实际项目中采用最多的是面向接口编程,也就是一个接口对应一个XML映射文件,如果让接口和映射文件对应呢?答案是XML映射文件中的mapper namespace="com.mybatis.inter.IUserOperation",这个namespace中一定是接口的全名,不能是别名、简名,否则运行时会报错。一般我们会把接口名和映射文件名写成一样的,而且在同一个包下,所以感觉namespace就是xml文件的全名。

  

 

关于myBatis配置中的一些注意事项的更多相关文章

  1. Mybatis配置中遇到的问题和问题分析

    1.为什么这么配置,这个配置主要是作用是什么,主要的是针对什么 mybatis之xml映射配置 sql语句当中 Example_Where_Clause 这个仅仅是一段sql语句吗? <trim ...

  2. 项目总结2——mybatis配置的理解

    之前的项目基本上都是用mongodb,以至于mysql相关的知识异常薄弱,这次连续一个半月的加班,总算是实际用到了mysql,也使自己对mysql了解的更多,对mybatis了解的更多,这里就说一说经 ...

  3. mybatis <sql /> 配置中 返回值 resultType 与resultMap的区别

    mybatis的objectMapper.xml中, 1) 若<sql /> 查询语句中配置的是resultType=“实体类/DTO” ,则从mybatis返回的键值对结果集(Map)会 ...

  4. 【转】MyBatis学习总结(三)——优化MyBatis配置文件中的配置

    [转]MyBatis学习总结(三)——优化MyBatis配置文件中的配置 一.连接数据库的配置单独放在一个properties文件中 之前,我们是直接将数据库的连接配置信息写在了MyBatis的con ...

  5. 2 将mybatis配置到springmvc中

    为了更方便的连接数据库,将mybatis配置到springMVC中 1).  首先是jar包    多了3个jar  druid 这个是阿里的数据库连接包      mybatis和 mybatis- ...

  6. nginx代理配置 配置中的静态资源配置,root 和 alias的区别。启动注意事项

    这篇主要内容是:nginx代理配置 配置中的静态资源配置,root 和 alias的区别.启动注意事项! 为什么会在window上配置了nginx呢?最近我们的项目是静态资源单独放在一个工程里面,后端 ...

  7. 使用Mybatis时mybatis-config.xml配置中"configuration" 的内容必须匹配 (.....)解决方案

    一.简述 使用Mybatis配置mybatis-config配置文件时,经常遇到下列报错信息:org.xml.sax.SAXParseException; lineNumber: 36; column ...

  8. Mybatis系列(二):优化MyBatis配置文件中的配置和解决字段名与实体类属性名不相同的冲突

    原文链接:http://www.cnblogs.com/xdp-gacl/p/4264301.html     http://www.cnblogs.com/xdp-gacl/p/4264425.ht ...

  9. Mybatis配置映射文件中parameterType的用法小结

    原创: 在mybatis映射接口的配置中,有select,insert,update,delete等元素都提到了parameterType的用法,parameterType为输入参数,在配置的时候,配 ...

随机推荐

  1. leetcode 34在排序数组中查找元素的第一个和最后一个位置

    class Solution { public: vector<int> searchRange(vector<int>& nums, int target) { ve ...

  2. python - readline 模块

    转载:https://www.cnblogs.com/fireflow/p/4841413.html readline模块定义了一系列函数用来读写Python解释器中历史命令,并提供自动补全命令功能. ...

  3. [Flask]通过render_form快捷渲染表单

    依赖: Bootstrap-Flask 实例化方式与flask_bootstrap相同. 关于render_form(): Bootstrap-Flask内置了两个用于渲染WTForms表单类的宏,r ...

  4. LoadRunner运行时异常处理

    VuGen提供了错误处理函数lr_continue_on_error,用来在脚本中实时修改Vuser的出错设置.lr_continue_on_error函数语法结构如下: Loadrunner在运行过 ...

  5. flutter ListView嵌套高度问题

    ListView嵌套时高度无法自适应,需要设置高度才可以显示,设置以下属性可以解决上述问题 shrinkWrap: true, physics: NeverScrollableScrollPhysic ...

  6. PyQt4 Python GUI窗体应用程序

    目录 目录 前言 软件环境 PyQT简介 Setup PyCharm Setup SIP Setup PyQt4 测试PyQt是否安装成功 常见错误 最后 前言 还是一句老话,公司要什么我就做什么.这 ...

  7. 52N皇后II

    题目:给定一个整数 n,返回 n 皇后不同的解决方案的数量. 来源:https://leetcode-cn.com/problems/n-queens-ii/ 法一: 自己的代码  时间超过百分之90 ...

  8. spring/boot 打包,资源/配置/业务文件分离

    spring/boot打包,将业务jar包和资源配置文件进行分离打包,打包后的资源在target/release文件夹下面 注意:添加以下配置后,注意修改自己的入口类 <!--相关编译打包依赖- ...

  9. Centos7 安装可视化界面

    yum group list Output: Loaded plugins: fastestmirror There is no installed groups file. Maybe run: y ...

  10. 【ABAP系列】SAP ABAP7.40新语法简介第一篇

    公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[ABAP系列]SAP ABAP7.40新语法简 ...