2013-03-14 69 views
-1

我从维基百科发现了设计模式DTO的一些信息。我在其他StackOverflow讨论中看到了一些讨论。但是无法获得如何创建和使用DTO的程序化理解。Java EE中的数据访问对象设计模式

我想知道:

  1. 这是什么让一个“设计模式”?
  2. 何时使用此模式?

任何来源,可能有助于新手学习有关DTO是高度赞赏。

+1

'@ Entity'类是Java EE中的DTO。 – 2013-03-14 05:21:17

+1

在将数据从某处传送到另一个地方时,通常使用DTO,例如Web服务中的实体类或JMS队列消息中的实体类。 – 2013-03-14 05:23:07

+1

也许相关的问题:[DTO模式是否被弃用?](http://stackoverflow.com/q/11237946/1065197) – 2013-03-14 05:31:08

回答

3

1,DTO不是设计模式。准确地说,它只是一项技术。
DTO代表数据传输对象。
2,您需要使用从数据库传输数据到其他地方不使用ResultSet,DTO可能是更好的选择。 3,DTO在多层架构软件开发中的一般应用,例如MVC。

例:

class User{ 
    private String id; 
    private String age; 
    private String name; 
    public String getId() { 
     return id; 
    } 
    public void setId(String id) { 
     this.id = id; 
    } 
    public String getAge() { 
     return age; 
    } 
    public void setAge(String age) { 
     this.age = age; 
    } 
    public String getName() { 
     return name; 
    } 
    public void setName(String name) { 
     this.name = name; 
    } 
}  


class DateAccess{ 
    public User getUserInfo(String id){ 
     User user= new User(); 
     String sql ="select id,name ,age from user where id =?"; 
     ResultSet rs = query(sql,id); 
     while(rs!=null&&rs.next()){ 
      user.setId(rs.getString("id")); 
      user.setName(rs.getString("name")); 
      user.setAge(rs.getString("age")); 
     } 
     return user; 
    } 
}