我一直在使用JSF& amp; PrimeFaces。在开发时,我注意到任何Web应用程序都存在2个瓶颈。如果我错了,请纠正我。
瓶颈是:
我已经将Hibernate框架用于持久层。现在如果改变了
发生在数据库中,然后无法在作用域中反映出来
豆子。 Hibernate具有动态更新属性,有助于更新
只有受影响的表格[在持续时]。但我没有发现类似的东西
我可以随时获得更新DAO的机制。这里,
开发人员必须负责使用更新它们
session.refresh()
方法,只重新加载整个对象
数据库表中的树。所以,对于每个小数据库的变化,我
认为DAO [在Hibernate中]的缓存功能被遗漏了
因为每次他们被逐出会话缓存。总之,数据库更新不会触发DAO更新。
更新DAO之后,如果我想反映视图级别的变化,那么我不得不接受Primeface套接字[PrimePush]的帮助,因为每次刷新页面都不是一个好的实现& primeface socket允许更新特定的id。所以,这意味着对于每个DAO字段,我都要接受许多不同的Primeface套接字的帮助,每个套接字都有唯一的通道。此外,开发人员还应在bean代码中向这些不同的套接字发送消息。
那么,问题是如何以有效的方式处理这些问题?是否还有其他技术/框架可以处理这些问题,以便开发人员不必担心?
答案 0 :(得分:0)
理想情况下,你应该这样做:
Hibernate Persistence Layer(让DAO执行CRUD操作)
访问DAO的托管Bean
使用BackBean查看(Primefaces)更新视图。
你不需要PrimePush等等。它应该由您的视图中的操作刷新