数据访问层
1.持久化
持久化:持久化是将程序中的数据在瞬时状态和持久状态间转换的机制
DAO 模式的优势就在于它实现了两次隔离。
-
隔离了数据访问代码和业务逻辑代码。
-
隔离了不同数据库实现。
一个典型的 DAO 模式主要由以下几部分组成:
-
DAO 接口:把对数据库的所有操作定义成抽象方法,可以提供多种实现。
-
DAO 实现类:针对不同数据库给出 DAO 接口定义方法的具体实现。
-
实体类:用于存放与传输对象数据。
-
数据库连接和关闭工具类:避免了数据库连接和关闭代码的重复使用,方便修改
Dao:数据库操作放在dao层中
dao层的组成:
1、dao层接口
2、dao层接口实现
3、实体类
2 .分层开发
分层开发优势
每一层专注于自己功能的实现,便于提高质量。
便于分工协作,从而提高效率。
便于代码复用。
便于程序扩展。
使用实体类传递数据
-
实体类的属性一般使用 private 修饰。
-
根据业务需要和封装性要求对实体类的属性提供 getter/setter 方法,负责属性的读取和
赋值,一般使用 public 修饰。
-
对实体类提供无参构造方法,根据业务需要提供相应的有参构造方法。
-
实体类最好实现 java.io.Serializable 接口,支持序列化机制,可以将该对象转换成字节序
列而保存在磁盘上或在网络上传输。
-
如果实体类实现了 java.io.Serializable 接口,就应该定义属性 serialVersionUID,解决不同
版本之间的序列化问题。
2.1.1、编写persion实体对象
import java.util.Date;
public class PersonEntity {
private int id; //人物id
private int masterId;//主公id
private String name; // 昵称
private int typeId; //类型id
private int health ;// 生命值
private Date addTime;//购买时间
private String status; //状态
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getMasterId() {
return masterId;
}
public void setMasterId(int masterId) {
this.masterId = masterId;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getTypeId() {
return typeId;
}
public void setTypeId(int typeId) {
this.typeId = typeId;
}
public int getHealth() {
return health;
}
public void setHealth(int health) {
this.health = health;
}
public Date getAddTime() {
return addTime;
}
public void setAddTime(Date addTi