构建者模式
构建者模式是一个创建型设计模式,使用类和对象创建分离的手段使得代码更加简洁明了,用于复杂对象的创建
例子
@Data
class Person {
private String name;
private int age;
private String gander;
}
class PersonBuilder {
private Person person;
public PersonBuilder() {
person = new Person();
}
public PersonBuilder name(String name) {
person.setName(name);
return this;
}
public PersonBuilder age(int age) {
person.setAge(age);
return this;
}
public PersonBuilder gander(String gander) {
person.setGander(gander);
return this;
}
public Person build() {
return person;
}
}
Mybatis中的应用
Mybatis中SqlSessionFactory对象有多种构建方式,如文件流,配置类等,放在SqlSessionFactory类中创建对象会显得很臃肿,所以单独在SqlSessionFactoryBuilder中定义了很多创建SqlSessionFactory对象的bulder方法