什么';CRUD应用程序推荐的JSF2.0范围是什么?

什么';CRUD应用程序推荐的JSF2.0范围是什么?,jsf,jsf-2,crud,Jsf,Jsf 2,Crud,我想知道CRUD应用程序使用哪个范围。使用@ReqeustScoped会导致每个请求都可以访问数据库。使用@SessionScoped,数据可以缓存在托管bean中,但会导致所谓的会话膨胀。此外,更难使数据保持最新。你推荐什么?是否有最佳实践解决方案。 谢谢 Theo好的,您想要的范围介于两者之间:。只要您提交并导航到同一视图,此作用域就会存在 另见: (附代码示例) 我为CRUD组件构建了一个基本体系结构,它只包含@RequestScope和缓存数据。我相信这个答案与一个特定的解决方案紧密

我想知道CRUD应用程序使用哪个范围。使用@ReqeustScoped会导致每个请求都可以访问数据库。使用@SessionScoped,数据可以缓存在托管bean中,但会导致所谓的会话膨胀。此外,更难使数据保持最新。你推荐什么?是否有最佳实践解决方案。 谢谢
Theo

好的,您想要的范围介于两者之间:。只要您提交并导航到同一视图,此作用域就会存在

另见:
  • (附代码示例)

我为CRUD组件构建了一个基本体系结构,它只包含@RequestScope和缓存数据。我相信这个答案与一个特定的解决方案紧密结合在一起,这个解决方案将所有操作都放在一个view/xhtml文件中。如果有三个视图:1个用于记录列表,1个用于细节视图,1个用于表单(创建和更新),那么答案可能是一个SessionScoped bean(大多数教程和代码生成器中的解决方案,如NetBeans和MyEclipse),或者“视情况而定”,列表和视图可能是一个RequestScoped bean,表单可能是一个ViewScoped bean(考虑AJAX组件)并使用输入隐藏来保留id。