Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JSF Hibernate决策支持_Hibernate_Jsf - Fatal编程技术网

JSF Hibernate决策支持

JSF Hibernate决策支持,hibernate,jsf,Hibernate,Jsf,我喜欢JSF和Hibernate,但我在做出正确的决定时遇到了一个问题: 事实上,我为客户、房子、问题和儿子准备了POJO。 还有一位业务代表兼租赁经理。这些程序可以帮助客户报告他/她的房子可能存在的一个或多个问题 我想得到所有的客户、房子和问题。RentManager能否通过POJO查询数据库,并使POJO不包含集合?如果是,所有实用程序方法将仅在RentManager中实现?还是我必须在POJO中复制?(干的?) 这是程序的片段,我想获得帮助 class Client{ //sett

我喜欢JSF和Hibernate,但我在做出正确的决定时遇到了一个问题:

事实上,我为客户、房子、问题和儿子准备了POJO。 还有一位业务代表兼租赁经理。这些程序可以帮助客户报告他/她的房子可能存在的一个或多个问题

我想得到所有的客户、房子和问题。RentManager能否通过POJO查询数据库,并使POJO不包含集合?如果是,所有实用程序方法将仅在RentManager中实现?还是我必须在POJO中复制?(干的?)

这是程序的片段,我想获得帮助

class Client{
    //setters/getters/ constructor are here. 
    //I have also client.hbm.xml and works fine
}
class Problem{
    //properties/setters/getters/ constructor 
}

class House{
    //properties/setters/getters/ constructor 
}

class RentManager{
    //List and ArrayList for houses, and problems,
    //and clients + setters/getters/DataModel for these collections

    // addProblem(), updateProblem(), .. 
    // addClient(), updateClient(), ... 
    // addHouse(), updateHouse(), ... 
}
目的是在我的控制器中使用RentManager,而不是直接从控制器访问POJO。
这是正确的方法吗?或者你们有什么建议?谢谢您的帮助。

您不应该在RentManager类中存储您的POJO(或POJO列表)。 相反,从数据库获取实体的方法应该返回POJO或POJO的集合。 然后,您可以更新与RentManager分离的数据模型。 保存、更新或删除实体的方法应指定POJO作为参数。 e、 g:列出GetAllClient(),无效保存(客户端)


另一种设计是将服务方法(保存、读取等)放入POJO中。这就是所谓的域驱动设计,但有了这样的设计,您就不再需要RentManager了。

我不明白您在这一部分中的问题:RentManager可以通过POJO查询数据库,而不使用集合吗?如果是这样的话,所有实用程序方法都将只在RentManager中实现?为了从数据库中获取数据,我们使用DAO并将数据存储到集合中[ArrayList,DataModel,…]。所以我的问题是,我是否可以在RentManager中实现该功能,并使POJO不包含集合?或者我必须将这些收藏同时包含在POJO和RentManager中吗?下一个问题是:我必须在RentManager和POJO中实现实用方法吗?例如:class House{/setter/getters/addHouse(House-House){…};}class RentManager{List House=…;addHouse(House-House){…}//?DRY?}我想至少有50%是清楚的。谢谢你是否可以添加一些你不确定是否可以做的伪代码?