我有一个3层应用程序。第二层是从第三层接收和对象,并且我需要将此对象的两个属性传递给第一层(UI)。我应该在第一层中使这个对象的类可见(通过导入它的包/命名空间,我试图避免)或者我应该将这些属性作为字符串数组传递(我宁愿拥有一个Object数组,但它们'是Java 1.4中的字符串和int类型)并在编译时将它们转换为正确的类型(它们的类型是固定的,所以谢天谢地这是一个选项)?
答案 0 :(得分:2)
这就是DTO(数据传输对象)的用途。简而言之:在顶级界面中使用对象。
答案 1 :(得分:1)
我不是Java专家,但我可以从.NET角度提供一些一般性建议。由于这是你的背景,它应该与你相关。
我应该创建这个对象的类 在第一层中可见(通过导入它的包/命名空间,我试图避免
可以导入名称空间。虽然可能感觉你减少了耦合,但这比字符串数组更好,因为它不需要昂贵的boxing。
不要忘记可读性始终是一个重要的考虑因素。我建议你看一下MVC模式。
答案 2 :(得分:0)
JavaBeans之类的声音是您的朋友,尽管您可能无法从可重用性/可串行性中获益。
JavaBeans是经典的DTO(Data Transfer Objects),用于传递程序中的信息。
答案 3 :(得分:0)
你有什么样的用户界面?摇摆?然后DTO可能是要走的路。考虑将DTO类放在自己的项目中,然后由客户端和服务器端共享。