主配置文件

properties

  • 第一种
<properties>
    <property name="jdbc.driver" value="com.mysql.jdbc.Driver"/>
    <property name="jdbc.url" value="jdbc:mysql://localhost:3306/eesy"/>
    <property name="jdbc.username" value="root"/>
    <property name="jdbc.password" value="1234"/>
  • 第二种

    • 在 classpath 下定义 db.properties 文件
<properties  resource="jdbcConfig.properties"/>

<dataSource type="POOLED">
    <property name="driver" value="${jdbc.driver}"/>
    <property name="url" value="${jdbc.url}"/>
    <property name="username" value="${jdbc.username}"/>
    <property name="password" value="${jdbc.password}"/>
</dataSource>

settings

主要用于改变MyBatis运行时行为,例如开启二级缓存,开启延迟加载等

typeAliases

  • 单个别名定义
<typeAliases>
    <typeAlias alias="user" type="com.itheima.domain.User"/>
</typeAliases>
  • 批量别名定义
    通过自动扫描包,将类名
<typeAliases>
    <package name="com.itheima.domain"/>
</typeAliases>
  • 如果在程序中使用了注解,则别名为其注解的值
    @Alias(value="user")

  • 除自定义类名外,Mybatis还默认为许多常见的Java类型提供了相应的类型别名

typeHandler

  • 类型处理器
  • 自定义类型处理器

objectFactory

  • 通常情况下使用默认的ObjectFactory即可,默认由DefaultObjectFactory提哦那个服务
  • 如需自定义对象工厂,实现ObjectFactory接口或继承DefaultObjectFactory类

plugins

-配置用户所开发的插件

environments

  • 通过该元素配置多种数据源,即配置多种数据库

mappers

  • 指定Mybatis映射文件的位置

    • <mapper resource=" " />:相对于类路径
    • <mapper url=" " />:本地文件路径引入
    • <mapper class=" " />:接口类路径,此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中
    • <package name=""/>:指定包下的所有 mapper 接口,此种方法要求 mapper 接口名称和 mapper 映射文件名称相同,且放在同一个目录中

映射文件

mappers是根元素

select

  • id:命名空间唯一标识符
  • parameterType:指定传入参数的类型,基本类型和String类型可以直接写类型名,类名要使用全限定类名
  • resultType:指定结果集的类型,和parameterType一样
  • resultMap
    • 可以建立查询的列名和实体类的属性名称不一致时建立对应关系。从而实现封装
    <!-- 建立 User 实体和数据库表的对应关系
    type 属性:指定实体类的全限定类名
    id 属性:给定一个唯一标识,是给查询 select 标签引用用的。
    -->
    <resultMap type="com.itheima.domain.User" id="userMap">
      <id column="id" property="userId"/>
      <result column="username" property="userName"/>
      <result column="sex" property="userSex"/>
      <result column="address" property="userAddress"/>
      <result column="birthday" property="userBirthday"/>
    </resultMap>
    id 标签:用于指定主键字段
    result 标签:用于指定非主键字段
    column 属性:用于指定数据库列名
    property 属性:用于指定实体类属性名称

insert

  • selectKey

update

delete

sql

Sql 中可将重复的 sql 提取出来,使用时用 include 引用即可,最终达到 sql 重用的目的

<!-- 抽取重复的语句代码片段 -->
<sql id="defaultSql">
    select * from user
</sql>

<!-- 配置查询所有操作 -->
<select id="findAll" resultType="user">
    <include refid="defaultSql"></include>
</select>

Mybatis- 配置的更多相关文章

  1. spring MVC、mybatis配置读写分离

    spring MVC.mybatis配置读写分离 1.环境: 3台数据库机器,一个master,二台slave,分别为slave1,slave2 2.要实现的目标: ①使数据写入到master ②读数 ...

  2. Mybatis配置

      首先导入mybatis-3.2.3.jar包 还有连接数据库的驱动包   工程中必须导入的三个包(对应的包附件中可以下载):   mybatis-3.2.3.jar sqljdbc.jar log ...

  3. Spring+Mybatis配置

    Spring+Mybatis配置 之前做项目的时候用到了spring+mybatis框架,一直想抽空整理一下 Mybatis: mybatis是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架 ...

  4. 2 将mybatis配置到springmvc中

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

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

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

  6. mybatis 配置 log4j 日志

    mybatis 配置 log4j 日志 使用Mybatis的时候,可能需要输出(主要是指sql,参数,结果)日志,查看执行的SQL语句,以便调试,查找问题. 测试Java类中需要加入代码: stati ...

  7. spring+myBatis 配置多数据源,切换数据源

    注:本文来源于  tianzhiwuqis <spring+myBatis 配置多数据源,切换数据源> 一个项目里一般情况下只会使用到一个数据库,但有的需求是要显示其他数据库的内容,像这样 ...

  8. Mybatis配置信息浅析 MyBatis简介(二)

    官方文档入门篇中有明确说明 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的. SqlSessionFactory 的实例可以通过 SqlSessionF ...

  9. mybatis配置与使用

    一:Mybatis简介 1.名称由来 Mybatis原名叫ibatis.Mybatis一开始属于Apache,2010年从Apache转移到了GoogleCode这个组织中. 2.Mybatis概念 ...

  10. SpringBoot+Mybatis配置Pagehelper分页插件实现自动分页

    SpringBoot+Mybatis配置Pagehelper分页插件实现自动分页 **SpringBoot+Mybatis使用Pagehelper分页插件自动分页,非常好用,不用在自己去计算和组装了. ...

随机推荐

  1. Solr 6.7学习笔记(02)-- 配置文件 managed-schema (schema.xml)(3)

         5. <fieldType> fieldType主要定义了一些字段类型,其name属性值用于前面<field>中的type属性的值.e.g. <fieldTyp ...

  2. cropper.js裁剪图片的使用

    这两天难得有时间可以整理一下最近学习的东西,这两天项目中用到了头像上传裁剪的功能,这里只介绍头像的裁剪吧. 单独实现图片剪裁的功能还是挺容易的,入门级别的.看一遍官方给的文档,基本上就明白了.大家如果 ...

  3. git 把文件从 版本管理中移除 andorid版本

    刚学git时,一股脑吧所有文件全部加到版本管理中,现在做Android开发,这样做就有很大的问题了,gen  和bin  文件夹下的文件是编译生成的,最好不要加到版本管理中,最好加入到.gitigno ...

  4. JSP-模拟银行卡账号密码登录页面跳转

    <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding= ...

  5. 73th LeetCode Weekly Contest Escape The Ghosts

    You are playing a simplified Pacman game. You start at the point (0, 0), and your destination is(tar ...

  6. python大战机器学习——模型评估、选择与验证

    1.损失函数和风险函数 (1)损失函数:常见的有 0-1损失函数  绝对损失函数  平方损失函数  对数损失函数 (2)风险函数:损失函数的期望      经验风险:模型在数据集T上的平均损失 根据大 ...

  7. 客户端发送http

    package com.scok; import java.io.BufferedReader; import java.io.InputStream; import java.io.InputStr ...

  8. 牛客网练习赛26B(简单的dp)

    题目链接:https://www.nowcoder.com/acm/contest/180/B 链接:https://www.nowcoder.com/acm/contest/180/B来源:牛客网 ...

  9. 【JavaEE】tomcat部署项目的几种方式 .

    一.静态部署1.直接将web项目文件件拷贝到webapps 目录中     Tomcat的Webapps目录是Tomcat默认的应用目录,当服务器启动时,会加载所有这个目录下的应用.所以可以将JSP程 ...

  10. 《从0到1学习Flink》—— Flink 项目如何运行?

    前言 之前写了不少 Flink 文章了,也有不少 demo,但是文章写的时候都是在本地直接运行 Main 类的 main 方法,其实 Flink 是支持在 UI 上上传 Flink Job 的 jar ...