Mybatis-01-什么是Mybatis以及第一个Mybatis

Mybatis-9.28

环境: jdk 1.8 Mysql 5.7 maven 3.6.1 IDEA

回顾: JDBC Mysql Java基础 Maven Junit

SSM框架:配置文件,最好的方式:看官方文档

http://mybatis.org/mybatis-3/zh/index.html

1.简介

1.1 什么是Mybatis?

持久层框架,支持定制化SQL、存储过程以及高级映射, 避免了所有的jdbc操作,使用简单的xml或注解来配置原生类型、接口和java的pojo。 关键词:持久层框架

如何获得Mybatis? maven仓库:

<dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.5.2</version> </dependency>

github:http://github.com/mybatis/mybatis-3/releases

中文文档

http://mybatis.org/mybatis-3/zh/index.html

1.2 持久化

数据持久化: 持久化就是将程序的数据在持久状态和瞬时状态转化的过程。 内存:断电即失 数据库(jdbc),io文件持久化。

1.3 持久层

Dao层、Service层、Controller层... 完成持久化工作的代码块 层的界限十分明显

1.4 为什么需要Mybatis?

帮助将数据存入到数据库中 方便 传统的Jdbc代码太复杂,简化-->框架 自动化 学Mybatis使更容易上手 优点: sql和代码分离 提供xml标签,支持编写动态sql

2.第一个Mybatis程序

思路:搭建环境->导入Mybatis->编写代码->测试

2.1 搭建环境

搭建数据库

create database `mybatis`;

use `mybatis`;

create table `user`(
	`id` int(20) not null primary key,
	`name` varchar(30) default null,
	`pwd` varchar(30) default null
	
)engine=innodb default charset=utf8;

insert into `user`(`id`,`name`,`pwd`)
values 
(1,'狂神','123456'),
(2,'张三','1234567'),
(3,'李四','12345678');

select * from user;

新建项目 1.新建一个普通的maven项目 2.删除src目录 3.导入maven依赖 ---基础项目工程搭建完毕

2.2 创建一个模块

编写mybatis的核心配置文件

<?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">
<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

编写mybatis工具类

2.3 编写代码

实体类

Dao接口

接口实现类: 由原来的UserDaoImpl转变为一个Mapper配置文件

2.4 测试

注意点: org.apache.ibatis.binding.BindingException: Type interface com.kuang.dao.UserDao is not known to the MapperRegistry.

MapperRegistry是什么? 核心配置文件中注册mappers

可能遇到的问题: 1.配置文件没有注册 2.绑定接口错误 3.方法名不对 4.返回类型不对 5.Maven导出资源问题


原文地址:https://www.cnblogs.com/CodeHuba/p/13445402.html