我们最近被教导了DTO(数据传输对象(以及为什么我们应该使用它们而不是直接从数据库中使用的对象。
我们的班级被称为Product
:id, code, price, name, description
。 在视图中,我们只显示code, price, name and description
,因此id
未使用。 我们的培训师告诉我们,我们应该使用DTO,如果id
会丢失的话。否则,她告诉我们,她可以在视图中暴露id
。
这样的事情怎么可能?我们正在使用.jsp
文件,这些文件在服务器端编译,.html
转换并发送给用户。你怎么可能公开一个不使用的字段?
与数据库通信的数据传输对象,在 数据库您可能只存储属性,如您的示例中, ID,代码,价格,名称,描述。
DTO是一个简单的POJO类,具有getter/setter方法
你可以从DTO的getter/setter访问数据库,并且该属性很可能是私有的。
该 id 是表中产品的唯一标识,无需 从演示文稿.jsp显示或公开。