1.什么是Mybatis?
MyBatis是一个优秀的持久层框架,它对jdbc操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费精力去处理例如注册驱动、创建connection、创建statement、手动设置参数、结果集检索等jdbc繁杂的过程代码。
Mybatis通过xml或注解的方式将要执行的各种statement(statement、preparedStatemnt、CallableStatement)配置起来,并通过java对象和statement中的sql进行映射生成最终执行的sql语句,最后由mybatis框架执行sql并将结果映射成java对象并返回。
2.为什么需要Mybatis?
帮助程序员将数据存入到数据库中。
方便:
传统的JDBC代码太复杂了。简化、框架、自动化。
不用Mybatis也可以。更容易上手。
优点:
简单易学
灵活
sql和代码的分离,提高了可维护性。
提供映射标签,支持对象与数据库的orm字段关系映射
提供对象关系映射标签,支持对象关系组建维护
提供xml标签,支持编写动态sql。
代码
1.创建测试的数据库
drop table emp;
#创建表
CREATE TABLE emp
(
eid int(10) primary key auto_increment,
ename varchar(20) not null,
dept varchar(20) not null,
job varchar(20) not null,
sal double not null,
phone varchar(20) not null,
address varchar(20) not null
);
insert into emp(ename,dept, job, sal,phone,address)
values('张翠萍','测试部','测试工程师',5800,'15821563548','郑州');
insert into emp(ename,dept, job, sal,phone,address)
values('李耀菲','测试部','测试经理',9800,'13658942168','许昌');
insert into emp(ename,dept, job, sal,phone,address)
values('王长林','研发部','开发工程师',8800,'13954865721','南阳');
insert into emp(ename,dept, job, sal,phone,address)
values('陈清泰','研发部','开发经理',14900,'13785463249','洛阳');
insert into emp(ename,dept, job, sal,phone,address)
values('赵德保','运维部','运维工程师',5200,'15785642139','信阳');
insert into emp(ename,dept, job, sal,phone,address)
values('刘瑞琳','运维部','产品经理',12600,'17956248563','商丘');
select * from emp;
2.创建一个Java项目并导入mybatis框架的jar包(在项目中创建一个lib文件夹放入mybatis框架的jar包,并导入项目中)