根据自我经验(不一定正确!),很多人初学者不清楚什么时候用po什么时候用vo,这个主要是在J2EE工程中的MVC思想上,最近在用springMVC写东东。其实springMVC就相当于ssh中struts的作用,有人测试得出springMVC的效率比struts2更高,因此我用的springMVC。
回到正题,po就是持久化对象,一般在hibernate里面对应数据库表格的时候用到,而vo是指值对象,即不一定是要对应着数据库表格,在业务逻辑层之间可以独立出来的对象。比如,咱们要写一个用户登录的例子;就可以确定两个基本的对象,对于po就可以是user表格对应的类User,而vo可以是登录后创建的session对象,session可以不是一个数据库表格,而是一个业务逻辑层面的对象。
通常情况下我就喜欢建立两个包:
com.guo.model(即po);
com.guo.vo;