美文网首页
传输对象模式

传输对象模式

作者: 散装咖啡 | 来源:发表于2017-05-30 03:01 被阅读41次

传输对象模式主要作用-适用于在不同层传输数据。例如在UI层和service层传输数据的时候,可以避免在内存中不断复制,节省资源的开销。
` ``
//transferObject
class StudentVO
{
private $name;
private $rollNo;

public function __construct($name, $rollNo)
{
    $this->name = $name;
    $this->rollNo = $rollNo;
}

public function getName()
{
    return $this->name;
}

public function setName($name)
{
    $this->name = $name;
}

public function getRollNo()
{
    return $this->rollNo;
}

public function setRollNo($rollNo)
{
    $this->rollNo = $rollNo;
}

}

class StudentBO
{
public $students;

public function updateStudent($student)
{
    $this->students[$student->getRollNo()]->setName($student->getName());
    echo "Student: Roll No " . $student->getRollNo() . ", updated in the database";
}



public function __construct(){
    $this->students['Robert'] = new StudentVO("Robert",0);
    $this->students['John'] = new StudentVO("John",1);
}

public function deleteStudent($student)
{
    //foreach ($this->students $a $v) {
        //if (get_class)
    //}
if (isset($this->students[$student->name])) {
    unset($this->students[$student->name]);
}
    //students.remove(student.getRollNo());
    echo "Student: Roll No " . $this->students->getRollNo() . ", deleted from database";
}

public function getAllStudents()
{
    return $this->students;
}

public function getStudent($rollNo)
{
    return $this->students[$rollNo->name];
}

}

$StudentBO = new StudentBO();

foreach ($StudentBO->getAllStudents() as $student) {
echo "Student: [RollNo : " . $student->getRollNo() . ", Name : " . $student->getName() . " ]";

}

//$all = $StudentBO->getAllStudents();
//var_dump($all);exit;
//$one = $all[0];
//$one->setName("Michael");
//$one->updateStudent($one);
//获取学生
$StudentBO->getStudent(0);
echo "Student: [RollNo : " . $StudentBO->getRollNo() . ", Name : " . $StudentBO->getName() . " ]";

参考文章 http://www.runoob.com/design-pattern/transfer-object-pattern.html

相关文章

  • 传输对象模式

    传输对象模式主要作用-适用于在不同层传输数据。例如在UI层和service层传输数据的时候,可以避免在内存中不断复...

  • 传输对象模式

    这个设计模式我是没想到在实际项目中怎么应用,在网上找的资料也只是对这个设计模式进行描述,如果你知道传输对象模式在项...

  • Java传输对象模式

  • 设计模式之传输对象模式

    简介 传输对象模式(Transfer Object Pattern)用于从客户端向服务器一次性传递带有多个属性的数...

  • 我们为什么需要DTO?(转)

    DTO是什么? 数据传输对象(DTO)(Data Transfer Object),是一种设计模式之间传输数据的软...

  • 第八式 传输对象模式

    1.简介 传输对象模式(Transfer Object Pattern)用于从客户端向服务器一次性传递带有多个属性...

  • 2020-02-20 Rsync工作方式介绍与实践

    Rsync有3种传输数据模式,具体如下: 本地(Local)数据传输模式Rsync的本地数据传输模式,很类似于cp...

  • jdbc读取数据库的一般设计模式

    一般采用了dto和dao相结合的设计模式,dto进行传输数据,dao数据访问对象是一个面向对象的数据库接口,进行数...

  • 序列化和反序列化原理分析

    Java领域的对象如何传输 基于socket进行对象传输 当对象没有被序列化时,报异常(java.io.NotSe...

  • Java--对象的序列化和反序列化

    对象序列化的目标: 将对的字节序列对象永久的保存到磁盘中。 允许在网络上直接传输对象,传输对象的字节序列。 对象序...

网友评论

      本文标题:传输对象模式

      本文链接:https://www.haomeiwen.com/subject/idglfxtx.html