Mybatis- 配置
主配置文件
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- 配置的更多相关文章
- spring MVC、mybatis配置读写分离
spring MVC.mybatis配置读写分离 1.环境: 3台数据库机器,一个master,二台slave,分别为slave1,slave2 2.要实现的目标: ①使数据写入到master ②读数 ...
- Mybatis配置
首先导入mybatis-3.2.3.jar包 还有连接数据库的驱动包 工程中必须导入的三个包(对应的包附件中可以下载): mybatis-3.2.3.jar sqljdbc.jar log ...
- Spring+Mybatis配置
Spring+Mybatis配置 之前做项目的时候用到了spring+mybatis框架,一直想抽空整理一下 Mybatis: mybatis是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架 ...
- 2 将mybatis配置到springmvc中
为了更方便的连接数据库,将mybatis配置到springMVC中 1). 首先是jar包 多了3个jar druid 这个是阿里的数据库连接包 mybatis和 mybatis- ...
- 项目总结2——mybatis配置的理解
之前的项目基本上都是用mongodb,以至于mysql相关的知识异常薄弱,这次连续一个半月的加班,总算是实际用到了mysql,也使自己对mysql了解的更多,对mybatis了解的更多,这里就说一说经 ...
- mybatis 配置 log4j 日志
mybatis 配置 log4j 日志 使用Mybatis的时候,可能需要输出(主要是指sql,参数,结果)日志,查看执行的SQL语句,以便调试,查找问题. 测试Java类中需要加入代码: stati ...
- spring+myBatis 配置多数据源,切换数据源
注:本文来源于 tianzhiwuqis <spring+myBatis 配置多数据源,切换数据源> 一个项目里一般情况下只会使用到一个数据库,但有的需求是要显示其他数据库的内容,像这样 ...
- Mybatis配置信息浅析 MyBatis简介(二)
官方文档入门篇中有明确说明 每个基于 MyBatis 的应用都是以一个 SqlSessionFactory 的实例为中心的. SqlSessionFactory 的实例可以通过 SqlSessionF ...
- mybatis配置与使用
一:Mybatis简介 1.名称由来 Mybatis原名叫ibatis.Mybatis一开始属于Apache,2010年从Apache转移到了GoogleCode这个组织中. 2.Mybatis概念 ...
- SpringBoot+Mybatis配置Pagehelper分页插件实现自动分页
SpringBoot+Mybatis配置Pagehelper分页插件实现自动分页 **SpringBoot+Mybatis使用Pagehelper分页插件自动分页,非常好用,不用在自己去计算和组装了. ...
随机推荐
- 51nod1091(贪心)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1091 题意:中文题诶- 思路:贪心: 我们先将数据按照左端点 ...
- 清北刷题冲刺 10-30 a.m
星空 #include<iostream> #include<cstdio> using namespace std; int n,m; int main(){ freopen ...
- Claris’ Contest # 2 Day 2 Problem C. Dash Speed(分治+可持久化并查集+树剖)
题面 题解 \(std\)爆栈了→_→ 我们先考虑一个简化的问题,如果只有加边的情况下如何动态维护直径 合并两棵树时,设\(a,b\)为\(A\)的直径的两个端点,\(c,d\)为\(B\)的直径的两 ...
- SP1026 FAVDICE - Favorite Dice
题目描述 一个\(n(n \leq 1000)\)面的骰子,求期望掷几次能使得每一面都被掷到. 输入输出样例 输入样例#1: 2 1 12 输出样例#1: 1.00 37.24 思路:期望\(dp\) ...
- angular学习笔记【ng2-charts】插件添加
原文:https://segmentfault.com/a/1190000008077830 1. 安装 ng2-charts npm install ng2-charts --save2. 还必须引 ...
- 设计模式——单例模式(Singleton)
保证一个类仅有一个实例,并提供一个访问它的全局访问点.——DP UML类图 模式说明 个人认为单例模式是所有设计模式中最为简单的一个模式,因为实现这个模式仅需一个类,而不像其他模式需要若干个类.这个模 ...
- PHP var_export
var_export可以将一个数组转为一个字符串 不同于var_dump,var_export并不会输出数据的类型以及字符大小等,只会简单把数组的key跟value拼接成一个字符串 <?php ...
- 页面上AJAX调用数据
<div class="section page9" data-page='9'> <div class="global-section-wrp med ...
- 与postgis相关的一些常用的sql
create table NODES (ID SERIAL not null,geometry geography(POINTZ, 4326) null); create table EDGES (I ...
- CentOS6.5安装配置详解
1. 环境要求 VMWare软件: CentOS6.5对应的iso镜像文件(位数对应个人计算机位数). 2. 安装步骤 打开VMWare,文件->新建虚拟机(以下几步默认跳过即可) 命名和选择安 ...