关键词:
概念
MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。
iBATIS一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBATIS提供的持久层框架包括SQL Maps和Data Access Objects(DAOs)。
当前,最新版本是MyBatis 3.5.9,其发布时间是2021年12月26日。
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
idea中配置MyBatis框架步骤
1.创建web项目
选择file-》new-》project,创建java项目,并勾选上web appliation,然后next
接着创建项目名称,然后finish
使用当前窗口展示项目
2.导入MyBatis相关的架包
在WEB-NF文件夹中新建lib文件夹
创建完成后,将MyBatis所需要的架包导入lib文件夹mybatis-3.2.2.jar和mysql-connector-java-8.0.23.jar
选中导入的架包,右键-》add as lib。。。
3.将MyBatis配置文件导入项目的资源文件夹
选中项目右键-》new
将database.properties和mybatis-config.xml文件粘贴至该文件夹
在database.properties文件中定义连接数据库的配置信息
在mybatis-config.xml文件中加入头文件信息
将resources文件夹转换成资源文件夹,选中项目,点击右上角的文件图标
可以观察到该文件夹的图标发生变化,说明设置成功
4.配置MyBatis框架的主配置文件信息
打开mybatis-config.xml文件,进行配置
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- ctrl+shift+/ 注释的快捷键 -->
<!-- 添加配置标签 -->
<configuration>
<!-- 将连接数据库的工具文件加载进来 -->
<properties resource="database.properties"></properties>
<!-- 当前项目的环境 -->
<environments default="development">
<environment id="development">
<!-- 配置事务管理器,以JDBC作为连接的事务 -->
<transactionManager type="JDBC"></transactionManager>
<!-- 配置数据库连接池 -->
<dataSource type="POOLED">
<!--property标签上的name里面的值是固定的 -->
<property name="driver" value="$driver"/>
<property name="url" value="$url"/>
<property name="username" value="$user"/>
<property name="password" value="$password"/>
</dataSource>
</environment>
</environments>
</configuration>
5.导入映射文件
通过对于MyBatis框架的了解,该框架是执行在dao层中的持久层框架,因此,我们在搭建MVC框架的时候,把该框架定义在dao层中,我们先选中src-》右键-》package创建包
将映射文件导入该包中
6.在映射文件中编写要执行的sql语句
我们以book表为例,使用sql语句获得book表中书籍的总数量,代码如下
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!--在mapper标签上添加一个属性,用于设置命名空间-->
<mapper namespace="com.book.dao">
<!--查询有多少本图书 编写任何要执行的sql语句都要注意两点,1.是都需要传入数据,2.返回值是什么-->
<select id="getBookNumber" resultType="int">
SELECT COUNT(*) FROM book
</select>
</mapper>
在配置文件中,首先要配置mapper标签,设置命名空间,该命名空间一般设置为该映射文件所在的包的路径
因该映射文件放置com.book.dao包中,因此namespace中填写该包名
然后编写select标签,表示将要执行的查询语句,设定id,用于java代码中通过该id找到要执行的sql语句,设置resultType属性,表示最后查询得到数据的返回值类型。
7.创建测试类进行测试
在com.book中创建test包作为代码测试
新建测试类
这里我们使用JUnit框架进行单元测试
将 JUnit框架架包导入lib文件夹
并选中关联项目
在BookTest测试类进行编写java代码
package com.book.test;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.junit.Test;
import java.io.IOException;
import java.io.InputStream;
public class BookTest
@Test
public void one()
//将mybatis-config.xml加载进来
try
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
//创建生成器
SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder();
//获得sql工厂对象
SqlSessionFactory factory=builder.build(is);
//获得sqlsession对象
SqlSession ss=factory.openSession();
//查询的是单数据,该方法中填写的参数由“命名空间”+“id的值”
int i=ss.selectOne("com.book.dao.getBookNumber");
System.out.println("查询到图书的总数量为:"+i+"本");
catch (IOException e)
e.printStackTrace();
提示:这里的数据库使用的是简单的book表,数据库名称为mydb,表的字段信息如下
初学者可以使用以下sql代码进行创建数据库
/*
Navicat MySQL Data Transfer
Source Server : aaa
Source Server Version : 50519
Source Host : localhost:3306
Source Database : mydb
Target Server Type : MYSQL
Target Server Version : 50519
File Encoding : 65001
Date: 2022-03-02 11:17:19
*/
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- Table structure for book
-- ----------------------------
DROP TABLE IF EXISTS `book`;
CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) COLLATE utf8_bin NOT NULL,
`author` varchar(20) COLLATE utf8_bin NOT NULL,
`price` double(10,2) NOT NULL,
`count` int(11) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
-- ----------------------------
-- Records of book
-- ----------------------------
INSERT INTO `book` VALUES ('1', '西游记', '吴承恩', '98.00', '20');
INSERT INTO `book` VALUES ('2', '红楼梦', '曹雪芹', '98.00', '30');
INSERT INTO `book` VALUES ('3', '三国演义', '罗贯中', '98.00', '50');
总结
Mybatis框架是一款优秀的持久层框架,值得初学者进行学习。
本文就介绍到这里,初学者可根据该文章进行配置和练习。
mybatis第二课mybatis映射文件的crud操作<方式一>(代码片段)
概念【MyBatis】第一课MyBatis的框架的搭建和使用_笔触狂放的博客-CSDN博客本文在上一篇文章之后,操作数据库的增删改查。1.查询操作在mapper.xml映射文件中编写查询的sql语句,根据不同的条件和查询的字段进行分析和设置... 查看详情
搭建一个简单的mybatis框架
一、Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单的XML或注解用于配置和原始映射,将... 查看详情
mybatis框架的搭建和配置
MyBatis是支持定制化SQL、存储过程以及高级映射的优秀持久层框架。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以对配置和原生Map使用简单的xml或注解,将接口和Java的POJOs(PlainOldJavaObjects,普通的Java对... 查看详情
mybatis框架的搭建
MyBatis框架的前身是iBatis,本身是Apache的一个开源项目。MyBatis框架是一个半自动的orm映射框架,是实体类和sql语句之间建立映射关系,sql语句写在单独的配置文件中,便于统一的管理与维护,降低了程序的耦合度。其他知识:一般... 查看详情
mybatis框架的搭建和基本使用方法
1.1MyBatis的下载最新yBatis可以在github官网上下载:https://github.com/mybatis/mybatis-31.2MybatisJar包 1.3MyBatis工作原理1.4Mybatis的整个的执行流程 MyBatis应用程序根据XML配置文件创建SqlSessionFactory,SqlSessionFactory在根据配置,配 查看详情
ssm框架简单搭建
spring+SpringMVC+MyBatis框架(SSM)是比较热门的中小型企业级项目开发的框架,对于新手来说也是比较容易学习入门的。虽说容易,但在框架搭建过程中仍然遇到了许多问题,因此用实例记录下来吧。实例第一步——导包Spring框架包... 查看详情
mybatis框架简介搭建及核心元素讲解
...都知道当前比较流行的框架,如Spring、SpringMVC、Hibernate、Mybatis等框架,那今天咱们来讲讲当前比较流行的企业框架Mybatis。首先先来介绍一下Mybatis这个框架:Mybatis是一个开源的数据持久化层框架,它内部封装了通过JDBC访问数据... 查看详情
mybatis框架快速入门
通过快速入门示例,我们发现使用mybatis是非常容易的一件事情,因为只需要编写Dao接口并且按照mybatis要求编写两个配置文件,就可以实现功能。远比我们之前的jdbc方便多了。(我们使用注解之后,将变得更为简单,只需要... 查看详情
mybatis的使用一(框架的搭建)(代码片段)
本文主要讲述如何快速使用mybatis一.MyBatis的下载 MyBatis框架下载网站:Releases·mybatis/mybatis-3(github.com) 下载好之后,文件目录如下: 打开mybatis-3.5.10.pdf,mybatis的使用手册,进行mybatis的搭建二.MyBatis的安装与配置1.创建... 查看详情
mybatis环境搭建
什么是MyBatis:MyBatis是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架(OobjectRrelatoinMmapping框架),MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集,MyBatis可以对配置和原生Map使用简单的xml或注解,将... 查看详情
springmvc第一课springmvc框架环境搭建以及使用
概念SpringMVC属于SpringFrameWork的后续产品,已经融合在SpringWebFlow里面。Spring框架提供了构建 Web 应用程序的全功能MVC模块。使用Spring可插入的MVC架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的SpringMVC框架或... 查看详情
mybatis第一天框架课程(上)
1课程计划第一天:1、mybatis的介绍2、Mybatis的入门a)使用jdbc操作数据库存在的问题b)Mybatis的架构c)Mybatis的入门程序3、Dao的开发方法a)原始dao的开发方法b)动态代理方式4、SqlMapConfig.xml文件说明第二天:1、输入映射和输出映射a)输入... 查看详情
mybatis环境搭建
Mybatis1.介绍Mybatis(1)帮助文档上介绍:http://www.mybatis.org/mybatis-3/zh/index.html(2)持久层框架 狭义:把数据永久性的保存到数据当中 广义:针对于数据库的所有操作都称为持久化操作(3)orm框架(对象关系映射... 查看详情
ssm框架搭建
先将Spring和Mybatis整合1.加入mybatis的jar包和配置文件:实际上需要配置的就是settings的部分。<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEconfigurationPUBLIC"-//mybatis.org//DTDConfig3.0//EN""http://mybatis.org/dtd/mybatis 查看详情
使用idea搭建一个简单的ssm框架:配置spring+mybatis
...建一个简单的SSM框架:(2)配置springMVC 1配置spring和mybatis整合文件spring和mybatis整合分为三个步骤:(1)配置数据库,(2)配置SqlSessionFactoryBean(来自mybatis-spring),(3)配置MapperScanne 查看详情
spring第一课spring框架的环境搭建和使用
概念Spring框架是由于软件开发的复杂性而创建的。Spring使用的是基本的JavaBean来完成以前只可能由EJB完成的事情。然而,Spring的用途不仅仅限于服务器端的开发。从简单性、可测试性和松耦合性角度而言,绝大部分Java应... 查看详情
spring+springmvc+mybatis框架集成搭建教程
一、背景 最近有很多同学由于没有过SSM(Spring+SpringMvc+Mybatis,以下简称SSM)框架的搭建的经历,所以在自己搭建SSM框架集成的时候,出现了这样或者那样的问题,很是苦恼,网络上又没有很详细的讲解以及搭建的教程。闲来无事... 查看详情
mybatis第一章
学习过的持久层框架:DBUtils,Hibernate Mybatis就是类似于hibernate的orm持久层框架。 为什么学Mybatis?目前最主流的持久层框架为hibernate与mybatis,而且国内目前情况使用Mybatis的公司比hibernate要多。Hibernate学习门槛不低,要精通... 查看详情