简介
java开发实际上会进行分层开发, 思路是 控制层--->业务层--->数据访问层--->数据库
由于本次课程只 设计mybatis, 因此 我们没有前端页面,只能通过 junit来进行单元测试,
因此 我们只需要做好 数据访问 层即可。
数据访问层(Data Access Layer,简称DAL)负责与数据库的交互,运行数据库查询并执行更新。简单的说法就是实现对数据表的Select(查询),Insert (插入),Update(更新),Delete(删除)等操作。如果要加入ORM的元素,那么就会包括对象和数据表之间的映射,以及对象实体的持久化。数据访问层,简单的说,就是在DAL层对数据库进行的SQL语句等操作。
接下来 再次确认下 数据库表结构
接下来按照表结构进行建立实体层, 这里 需要让列名 与属性 及类型 一一对应
步骤
打开 idea
找到之前建立的第一个模块, mybatis01, 因为要编写实体层, 因此我们增加个依赖lombog 简化下实体层的写法:
修改 mybatis01的pom.xml 增加 以下依赖
<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.18.24</version> </dependency>
开始编写java代码, 代码位置 src/main/java 下
package entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
@Data // 为属性生成get/set 方法
@AllArgsConstructor // 全参构造器
@NoArgsConstructor // 无参构造器
@ToString // 生成toString()
public class Grade {
private Integer gid;
private String gname;
}
推荐做法:
1. 类名与表名一致, 且类名 遵循java命名规范, 首字母大写, 采用驼峰式命名
2. 属性:
属性名 尽量与列名一致, 当然可以不一致, 但目前还未学习resultMap 因此先让两者一致
属性类型 与列名 类型 一致, int ---- int或Integer , varchar ---String, date--- Date
同样的方式, 编写 Student.java
package entity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;
import java.util.Date;
@Data // 为属性生成get/set 方法
@AllArgsConstructor // 全参构造器
@NoArgsConstructor // 无参构造器
@ToString // 生成toString()
public class Student {
private Integer sid;
private String sname;
private Date born;
private Integer gender;
private String phone;
private String address;
private Integer gid;
}
映射关系 如下图:
目前 学习mybatis的准备工作 已经结束,从下节课开始, 正式学习mybatis
具体见 mybatis01的项目源码