MyBatis学习——第一章:简介

编程入门 行业动态 更新时间:2024-10-28 04:28:54

MyBatis学习——第一章:<a href=https://www.elefans.com/category/jswz/34/1769824.html style=简介"/>

MyBatis学习——第一章:简介

简介

什么是 MyBatis?
MyBatis 是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射。MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型、接口和 Java POJO(Plain Old Java Objects,普通老式 Java 对象)为数据库中的记录。(来自官网)
那么mybatis到底是什么呢?说白了就是一个ORM(object relationship map)框架,可以让数据库中的表和Java中的实体类相互转换。
假设有一个user表,其表结构如下:

User表:
create table user
(id       int auto_increment primary key,username varchar(32)  not null comment '用户名称',birthday datetime     null comment '生日',sex      char         null comment '性别',address  varchar(256) null comment '地址'
)charset = utf8;

mybatis要做的事情就是将上述的表结构转换为如下实体类User:

import java.io.Serializable;
import java.util.Date;public class User implements Serializable {private Integer id;private String username;private String sex;private String address;private Date birthday;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getSex() {return sex;}public void setSex(String sex) {this.sex = sex;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}public Date getBirthday() {return birthday;}public void setBirthday(Date birthday) {this.birthday = birthday;}@Overridepublic String toString() {return "User{" +"id=" + id +", username='" + username + '\'' +", sex='" + sex + '\'' +", address='" + address + '\'' +", birthday=" + birthday +'}';}
}

上述转换中,数据表中的每行属性名,对应的是实体类中的属性。例如user表中id列名,对应的就是user实体类中的id属性;username对应的是实体类中username属性。同时呢,在实体类中,每个属性必须有自己的set()和get()方法,tostring()方法不做要求。
经过如上转换后,我们只需要操作在实际开发中操作实体类即可,就不需要写过多的JDBC代码,同时也完全发挥了Java的面向对象特性(关系数据库是面向关系的)。
mybatis的底层实现
那么mybatis的底层实现是怎样的呢?其实说白了就是将Java公司提供的JDBC进行再一次封装,从而实现ORM框架。底层实现不必知道,只要知道怎么用就行了。

更多推荐

MyBatis学习——第一章:简介

本文发布于:2023-07-27 22:08:44,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1225614.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:简介   MyBatis

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!