站内搜索: 请输入搜索关键词

当前页面: 开发资料首页JSP 专题【请问】VO(DTO)与PO(DAO)是什么意思 应该到那里去学

【请问】VO(DTO)与PO(DAO)是什么意思 应该到那里去学

摘要: 【请问】VO(DTO)与PO(DAO)是什么意思 应该到那里去学


PO好像是在hibernate中出现的吧,那我就马上看看hibernate
那VO(DTO)呢 应该上哪里学这东西啊
我的BOSS 让我看看这两个东西 给我弄的一楞 也不知道应该去哪里看 呵呵 谢啦


PO即 Persistence Object持久化对象;VO即 Value Object,值对象。
http://www.hibernate.org/hib_docs/reference/zh-cn/html/
官方网站,还是中文的。



到哪里去学这个VO即 Value Object 值对象啊
不就是J2SE里面的东西吗


对啊 应该到哪里去学VO啊


VO(DTO)、PO(DAO)是j2ee设计模式,可到sun的网站查看相关内容或者到:
http://www.corej2eepatterns.com/
去看看


如嫌不够,可到java界牛人Martin Fowler的个人网站了解根多企业应用架构模式
http://www.martinfowler.com/eaaCatalog/index.html


难道就没有一本是讲VO的吗
我这里有hibernate的书 应该能看见PO吧 呵呵


VO就是一个普通的java类,你比如:

public class UserVO
{
private String id;
private String userID;//用户编号
private String username;//用户名称
public String getId()
{
return id;
}
public void setId(String id)
{
this.id = id;
}
public String getUserID()
{
return userID;
}
public void setUserID(String userID)
{
this.userID = userID;
}
public String getUsername()
{
return username;
}
public void setUsername(String username)
{
this.username = username;
}
}
这就是一个简单的VO,需要配置相应的.hbm.xml文件。


非常感谢 呵呵 看看就明白了


VO PO我很少这样命名。
如果真如楼上所说,那么VO,就是一个POJO(普通/简单JAVA类)

DAO: Data Access Object, 数据操作对象,一般同Manager类,就是持久层的操作类。

DTO: Data Transaction Object, 数据传输对象,

举个例子来说,如果是 M-V-C模式,读取所有Student的信息显示在页面上,会这样:
1.持久化数据,把student表的内容与Student类做一个映射。这个时候,Student类就是
一个POJO。
2.操作持久层。使用StudentDAO类中的某个方法来实现读取Student表所有内容。这个时候,
StudentDAO类就是一个DAO。(也可能会命名成StudentManager,只是命名的区别)
3.将数据从MODEL层传递到VIEW层。因为第二步取出的是一个对象,所以一般是把这个
对象放到request中,这个时候就是DTO了。比如request.setAttribute("xxxDTO",xxx);
然后在VIEW层用的时候,使用request.getAttribute("xxxDTO");就可以了。

不过,貌似使用了JSTL之后,就可以省略DTO了。另外,我很少见到DTO。见的最多的是
POJO和DAO/MANAGER。

很不成熟的意见,希望楼下指正。




同意sg552(:))的意见


↑返回目录
前一篇: 我的Apache2.2.3+Tomcat5.5.17+MySQL5.0组合配置过程,大家看看有没有什么不妥的地方
后一篇: 【垂死挣扎】在MyEclipse中如何启动JBoss啊 怎么在控制台上可以 在MyEclipse怎么就不好使呢?