设为首页  
联系我们  
加入收藏  
网页制作 冲浪宝典 图形图像 操作系统 软件教学 编程开发 认证考试 安全技术 站长专区 文学驿站 娱乐天地 游戏天地 办公软件
文章搜索
您的位置: 首页 >> 文章首页 >> 编程开发 >> Java >> JSF+Spring+Hibernate的实例讲解(原创翻译)
精品推荐
Java点击TOP10
·java笔试题
·《Thinking in Java》读书笔记
·JSP的mysql_jdbc驱动程序
·异常java.sql.SQLException: Io exception:The Network Adapter could not establish connection
·Java Coder 常用软件下载地址
·org.apache.commons.dbcp.SQLNestedException解决办法
·Java图形界面开发:SWT全接触
·如何使用Java POI生成Excel表文件 !
·功能强大的在线网页编辑器
·一些非常不错的Struts 例子下载
编程开发点击TOP10
·ASP.NET 程序中常用的三十三种代码
·利用ASP.NET构建网上考试系统
·C#版的网站新闻发布系统
·(转)23种设计模式汇集
·设计ASP.NET新闻管理系统
·深山红叶袖珍PE工具箱V16正式版
·我的.NET书架 (入门篇)
·java笔试题
·C++经典电子书下载
·网页打印问题,打印设置,打印预览,打印分页,纵打,横打及页面的边距
精选专题

JSF+Spring+Hibernate的实例讲解(原创翻译)

作者: 来源:网络文章 时间:2005-12-15 0:09:15

JSF+Spring+Hibernate的实例讲解(原创翻译)(6) 在这篇文章中Backing bean 和视图对象是可交换的术语。
比较Struts中的Actionform和Action,在JSF中开发backing beans遵循面向对象设计的最好实践。一个backing bean不仅包含视图数据,也包含与数据相关的行为。在Struts 中,Action 和ActionForm包含数据和逻辑分离。
我们都听说过域对象模型。那么,域对象模型和视图对象有什么不同呢?在一个简单的Web应用程序里,一个域对象模型能被用于所有的层,然而,在一些复杂的Web应用程序里面,一个单独的视图对象模型需要被使用。域对象模型是关于业务对象,应该归入业务逻辑层。它包含特定业务对象相关的业务数据和业务逻辑。一个视图对象包含特定数据和行为的表示。JCatalog项目的ProdUCtListBean提供了一个好的例子。它包含表示层数据和逻辑细节,举例来说,与分页相关的数据和逻辑。从域对象模型分离视图对象的缺点是数据映射必须发生在两个对象模型之间。在JCatalog项目中,ProdUCtBeanBuilder和UserBeanBuilder使用基于反射的Commons BeanUtils去实现数据映射。
安全
当前,JSF没有内置的安全特征。例子的安全需求是基本的:用户连接到管理员使用的公司内部网需要的认证是基于用户名和密码,不需要授权。
在JSF里面几个处理用户认证的方法已经被提出:
Use a base backing bean:这个解决方 案是简单的。然而,它使backing beans与特殊的遗产层次绑定。
Use JSF ViewHandler decorator:这种方法使安全逻辑紧紧地加上一个特殊的Web层技术。
Use a servlet filter:一个JSF 应用程序与其他基于Java的Web应用程序不同。它在一个恰当的地方使用一个过滤器处理认证检查。这种方法使Web应用程序中的认证逻辑减弱了。
在例子应用程序中,SecurityFilter类处理用户认证。当前,受保护的资源只有三个页面,为了简单,它们被硬编码在Filter类里面。可以通过扩展安全规则来改进它,把受保护的资源放到配置文件中。
分页
应用程序的目录页需要分页。表现层能处理分页,这意味着所有数据必须被重新得到存储在这层。分页也能在业务逻辑层、集成层甚至是EIS层处理。JCatalog项目的假定是在目录中的产品不超过500种。所有产品信息适合保存在用户session中。分页逻辑存在ProdUCtListBean类中。与分页有关的参数“每页的产品”通过JSF的managed-bean工具配置。
缓存
缓存是Web应用程序中改善性能的众多重要技术中的一种。缓存能在应用程序体系结构内的许多层完成。体系结构中的一层减少调用它下面的层时,缓存是非常有益的。JSF managed-bean工具使在表现层实现缓存更容易。通过改变一个managed bean的范围,包含在managed bean中的数据能在不同的范围内缓存。
例子应用程序使用二级缓存。第一级缓存在业务逻辑层里面。CachedCatalogServiceImpl类维护所有产品和目录的读/写缓存。Spring 管理的类作为一个单独服务bean。所以,一级缓存是一个应用程序范围的读/写缓存。
对于简单的分页逻辑和将来应用程序速度的提高,表现层的会话范围内的产品也被缓存。每个用户维护他session里面自己的ProdUCtListBean。缺点是占用系统内存和存在旧数据。在一个用户session的持续时间里,如果管理员更新了目录,用户可能会看到旧的目录数据。然而,基于这样的假定,目录中部超过500种产品,而且目录更新不频繁,我们应该能够忍受这些缺点。

1.JSF+Spring+Hibernate的实例讲解(原创翻译)(1)
2.JSF+Spring+Hibernate的实例讲解(原创翻译)(2)
3.JSF+Spring+Hibernate的实例讲解(原创翻译)(3)
4.JSF+Spring+Hibernate的实例讲解(原创翻译)(4)
5.JSF+Spring+Hibernate的实例讲解(原创翻译)(5)
6.JSF+Spring+Hibernate的实例讲解(原创翻译)(6)
7.JSF+Spring+Hibernate的实例讲解(原创翻译)(7)
8.JSF+Spring+Hibernate的实例讲解(原创翻译)(8)
9.JSF+Spring+Hibernate的实例讲解(原创翻译)(9)
10.JSF+Spring+Hibernate的实例讲解(原创翻译)(10)
11.JSF+Spring+Hibernate的实例讲解(原创翻译)(11)
12.JSF+Spring+Hibernate的实例讲解(原创翻译)(12)
13.JSF+Spring+Hibernate的实例讲解(原创翻译)(13)
14.JSF+Spring+Hibernate的实例讲解(原创翻译)(14)
15.JSF+Spring+Hibernate的实例讲解(原创翻译)(15)
16.JSF+Spring+Hibernate的实例讲解(原创翻译)(16)
17.JSF+Spring+Hibernate的实例讲解(原创翻译)(17)
18.JSF+Spring+Hibernate的实例讲解(原创翻译)(18)
19.JSF+Spring+Hibernate的实例讲解(原创翻译)(19)
20.JSF+Spring+Hibernate的实例讲解(原创翻译)(20)
21.JSF+Spring+Hibernate的实例讲解(原创翻译)(21)
22.JSF+Spring+Hibernate的实例讲解(原创翻译)(22)
共22页 9 7 [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [17] [18] [19] [20] [21] [228 :>

JSF+Spring+Hibernate的实例讲解(原创翻译) 相关文章:
JSF+Spring+Hibernate的实例讲解(原创翻译) 相关软件:
特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
转载请注明来源:http://www.xgdown.com