MyBaits
第一节、开发三层架构(MVC模型)
经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是将M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。
持久层:业务层处理业务的时候,业务的数据都是来自数据库。持久就是专门用于和数据库之间桥梁。
具体到代码中:
视图层—>控制器(分析请求的类型,数据,请路径…)—>业务层(专门用于做业务-数据事务控制)—>持久层(专门用于数据库的操作)
实际开中:控制器:controller(包名) 如:com.wnxy.controller
业务层:service 如:com.wnxy.service
持久层:dao 如:com.wnxy.dao
注意:学习了分层,代码按照这个规范写
第二节、myBatis的简介
1、MyBatis 是一款优秀的持久层框架
2、MyBatis 免除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作
3、MyBatis 可以通过简单的 XML 或注解来配置和映射原始类型(entity)
4、它支持自定义 SQL、存储过程以及高级映射
5、MyBatis是一个半自动(自定义SQL)ORM框架。
什么是ORM框架:对象关系映射框架,将程序中实体对象与数据库中关系表建立一个映射关系。我们可以直接通过对象操作数据库。
注意点:如果需要用ORM框架进行开发,我们程序中的代码需要和数据库中表对应
对应关系: 每一个实体类都对应一个数据库表
表中每一个字段对应实体类中每一个属性
6、市面上大部分的ORM框架底层都是JDBC,是对JDBC做了一层封装, 规避了JDBC的重复代码,使用ORM框架可以专注于数据库的操作。
第三节、MyBatis入门
3.1、基本的开发步骤
-
添加相关的依赖(MyBatis mySQl数据库包)
-
创建数据库表及实体类,实体类中的属性与表中列名一致
-
写DAO接口
-
public interface StudentMapper { int addStudent(Student stu); Student getById(int id); List<Student> getAll(); }
-
DAO接口对应的Mapper文件
-
<mapper namespace="com.wnxy.dao.StudentMapper