一、概念

1、作用:简化dao层,是框架的一部分,常叫SSM,或SSI

2、历史:之前的版本叫ibatis,三版之后叫mybatis

3、什么是orm?object,relational,mapping对象,关系,映射

简单说是实体类和sql语句之间的映射

也就是实体类和表的列

4、实体类常见的命名

entity,bean,model,pojo,vo,form

二、操作

老师提供的资料包

1、mybatis\mybatis-generator-core-1.3.2文件夹复制一份在D盘,方便操作

2、D:\mybatis-generator-core-1.3.2\lib 在此文件夹中,有一个generator.xml文件,

​右击用Notepade++打开,可能注释显示乱码,此时选菜单栏中的编码,选择使用ANSI编码,乱码问题就解决了

在generator.xml文件中需要改动6处

1)

<!-- 相应 数据库驱动 mysql:mysql-connector-java-5.1.22-bin.jar;oracl:ojdbc14.jar-->

<classPathEntrylocation="mysql-connector-java-5.1.22-bin.jar"/>

<!--<classPathEntrylocation="ojdbc14.jar"/>-->

2)

<!--数据库链接URL,用户名、密码 跟jdbc一样需要改相应名称 -->

<jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://127.0.0.1:3306/new" userId="root" password="root">

<!--<jdbcConnection driverClass="oracle.jdbc.OracleDriver" connectionURL="jdbc:oracle:thin:@localhost:1521:orcl" userId="scott" password="tiger">-->

</jdbcConnection>

3)

<!-- 生成模型的包名和位置-->

<javaModelGenerator targetPackage="com.unite.test.pojo" targetProject="src">

4)

<!-- 生成DAO的包名和位置-->

<javaClientGenerator type="XMLMAPPER" targetPackage="com.unite.test.dao" targetProject="src">

5)

<!-- 生成映射文件的包名和位置-->

<sqlMapGenerator targetPackage="com.unite.test.mapper" targetProject="src">

6)

<!-- 要生成哪些表,有几个表生成几个-->

<table tableName="tabaccount" domainObjectName="Account" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>

3、cmd程序

输入d:会回车

--cd空格粘贴路径回车

--复制generator.xml下的最后一句话(java -jar mybatis-generator-core-1.3.2.jar -configfile generator.xml -overwrite)回车

--就会在lib包下的src自动生成对应的包

4、javaee

1)先创建一个web项目3.0版本,tomcat使用9.0,选中生成web.xml文件,导mybatis需要的jar包

2)mynatis-3-mapper.dtd复制在mapper包下

3)log4j.properties和mybatis-3-config.dtd复制在src文件下

4)创建mybatis.xml文件

先配置资源库要写正确对应的数据库,

之后映射来源途经要写正确,按住cl+鼠标左键可以跳转到该页面,有几个映射写几个路径

5)更改mapper包下,自动生成的mapper.xml文件

改成

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "./mybatis-3-mapper.dtd" >

按住cl+鼠标单击可以实现跳转

相应的配置工作基本完成,如何利用mybatis替换dao层方法,下篇再描述

mybatis介绍以及配置的更多相关文章

  1. 03_MyBatis基本查询,mapper文件的定义,测试代码的编写,resultMap配置返回值,sql片段配置,select标签标签中的内容介绍,配置使用二级缓存,使用别名的数据类型,条件查询ma

     1 PersonTestMapper.xml中的内容如下: <?xmlversion="1.0"encoding="UTF-8"?> < ...

  2. MyBatis - 介绍、简单入门程序

    JDBC编程中的问题     1. 将SQL语句硬编码到Java代码,不利于系统维护.         设想如何解决:将SQL单独抽取出来,在配置文件(xml方式.properties文件)进行配置. ...

  3. mybatis中resultMap配置细则

    resultMap算是mybatis映射器中最复杂的一个节点了,能够配置的属性较多,我们在mybatis映射器配置细则这篇博客中已经简单介绍过resultMap的配置了,当时我们介绍了resultMa ...

  4. 深入浅出MyBatis:JDBC和MyBatis介绍

    JDBC相关概念 Java程序都是通过JDBC连接数据库的,通过SQL对数据库编程,JDBC是由SUN公司提出的一些列规范,只定义了接口规范,具体实现由各个数据库厂商去实现,它是一种典型的桥接模式. ...

  5. Mybatis学习笔记(一) —— mybatis介绍

    一.Mybatis介绍 MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名 ...

  6. mybatis介绍安装

    MyBatis 是支持定制化 SQL.存储过程以及高级映射的优秀持久层框架.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集.MyBatis 可以对配置和原生Map使用简单 ...

  7. (转)MyBatis框架的学习(一)——MyBatis介绍

    http://blog.csdn.net/yerenyuan_pku/article/details/71699343 MyBatis介绍 MyBatis本是apache的一个开源项目iBatis,2 ...

  8. Spring+MyBatis双数据库配置

    Spring+MyBatis双数据库配置 近期项目中遇到要调用其它数据库的情况.本来仅仅使用一个MySQL数据库.但随着项目内容越来越多,逻辑越来越复杂. 原来一个数据库已经不够用了,须要分库分表.所 ...

  9. Spring Boot (七): Mybatis极简配置

    Spring Boot (七): Mybatis极简配置 1. 前言 ORM 框架的目的是简化编程中的数据库操作,经过这么多年的发展,基本上活到现在的就剩下两家了,一个是宣称可以不用写 SQL 的 H ...

随机推荐

  1. liunx:网络命令

    现系统的学习一下Web渗透相关的命令 ping ping 命令是用来测试TCP/IP 网络是否畅通或者测试网络连接速度的命令,对确定网络是否正确连接,以及网络连接的状况十分有用.简单的说,ping就是 ...

  2. 【NX二次开发】图标图像

    用户定义位图的目录位置的环境变量 UGII_BITMAP_PATH 在NX日志中查看NX图标需要设置的变量 变量名:PRINT_DIALOG_BITMAP_NAMES 变量值:1 查看系统图标的方法1 ...

  3. echarts迁移图动态加载

    迁移图 获取迁移城市的经纬度 可以调用高德的接口,实现根据地名找寻经纬度的方法 #!/usr/bin/env python3 #-*- coding:utf-8 -*- ''' 利用高德地图api实现 ...

  4. Pytorch CNN网络MNIST数字识别 [超详细记录] 学习笔记(三)

    目录 1. 准备数据集 1.1 MNIST数据集获取: 1.2 程序部分 2. 设计网络结构 2.1 网络设计 2.2 程序部分 3. 迭代训练 4. 测试集预测部分 5. 全部代码 1. 准备数据集 ...

  5. Java8的Stream API确实很牛,但性能究竟如何?

    Stream Performance 已经对 Stream API 的用法鼓吹够多了,用起简洁直观,但性能到底怎么样呢?会不会有很高的性能损失?本节我们对 Stream API 的性能一探究竟. 为保 ...

  6. 「10.13」毛一琛(meet in the middle)·毛二琛(DP)·毛三琛(二分+随机化???)

    A. 毛一琛 考虑到直接枚举的话时间复杂度很高,我们运用$meet\ in\ the\ middle$的思想 一般这种思想看似主要用在搜索这类算法中 发现直接枚举时间复杂度过高考虑枚举一半另一半通过其 ...

  7. 【Javascript + Vue】实现随机生成迷宫图片

    前言 成品预览:https://codesandbox.io/s/maze-vite-15-i7oik?file=/src/maze.js 不久前写了一篇文章介绍了如何解迷宫:https://www. ...

  8. Unity_DOTween

    DOTween官网 DG.Tweening.Ease枚举详解 2019.12.12补充: 问题:当前dotween动画没播放完,便再次播放有冲突的操作,如连续多次播放.正播.倒播,导致显示不正常或报错 ...

  9. 12-1 MySQL数据库备份(分库)

    #!/bin/bash source /etc/profile DATE="$(date +%F_%H-%M-%S)" DB_IP="172.16.1.122" ...

  10. Vue.js 作用域、slot用法(单个slot、具名slot)

    作用域 在介绍slot前,需要先知道一个概念:编译的作用域.比如父组件中有如下模板: <child-component> {{message}} <child-component&g ...