搜索


会员资源切换至【手机版】

切换本帖至【手机版】


开启左侧

Seam实战扫描版[PDF]

[复制链接]
发表于 2021-8-23 21:22:21 | 显示全部楼层 |阅读模式
游客,本帖隐藏的内容需要积分高于 1 才可浏览,您当前积分为 0


资源信息:



中文名


: Seam实战


作者


: (美) 艾伦


译者


: 崔毅 等


图书分类


: 软件


资源格式


: PDF


版本


: 扫描版


出版社


: 人民邮电出版社


书号


: 9787115224644


发行时间


: 2010年06月01日


地区


: 大陆


语言


: 简体中文


概述


:




内容简介:


本书深入讲解了JBoss Seam,介绍了Seam如何消除了不必要的层和配置,解决了JSF最常见的难点,建立了JSF、EJB 3和JavaBean组件间缺少的链接。书中也介绍了如何利用Seam进行技术综合,如业务过程、有状态的页面流、Ajax远程处理、PDF生成、异步任务等。   本书适用于Java程序员阅读。


资源来自网络,如侵犯了您的权利,请点击,谢谢!



白盘用户可在(网盘分流地址):


本页“用户评论”处2楼找下载链接。


内容截图:





目录


: 第一部分 了解Seam 第1章 Seam使Java EE一体化 2 1.1 我该选用哪种框架 3 1.2 选择Seam 3 1.2.1 完整的应用程序栈 4 1.2.2 开发Seam的原因 4 1.2.3 “厂商垄断”传闻真相 5 1.2.4 Seam用例 6 1.3 Seam的统一方法 7 1.3.1 Seam整合了JSF、JPA和POJO组件 7 1.3.2 上下文组件模型 9 1.4 牛刀小试 12 1.4.1 充当Backing Bean的实体类 12 1.4.2 全能的组件 13 1.4.3 将组件绑定到视图上 14 1.4.4 按需获取数据 16 1.4.5 可点击列表 16 1.4.6 为JSF设计的集成测试 17 1.5 Seam的核心竞争力 18 1.5.1 让JSF变成能手 19 1.5.2 让你快速构建“富”应用 21 1.5.3 构建敏捷的开发环境 22 1.6 小结 23 第2章 seam-gen实践 25 2.1 Open 18原型 25 2.1.1 整装待发 26 2.1.2 将实体映射到数据库Schema 27 2.2 让seam-gen完成初始工作 30 2.2.1 seam-gen的特点 30 2.2.2 seam-gen提供的特性 31 2.3 用seam-gen启动项目 32 2.3.1 seam-gen命令一览 32 2.3.2 与seam-gen的针锋对话 34 2.3.3 创建基础项目结构 37 2.3.4 生成CRUD 38 2.4 将项目部署到JBoss应用服务器 40 2.4.1 部署 40 2.4.2 展开 41 2.4.3 切换环境 42 2.4.4 启动JBoss应用服务器 43 2.5 展示与讲述、改变和重复 45 2.5.1 球场漫步 45 2.5.2 反向工程的过程 50 2.5.3 探讨生成项目的结构 53 2.6 快速开发seam-gen项目 56 2.6.1 增量热部署 57 2.6.2 用IDE加速开发 60 2.7 小结 69 第二部分 Seam基础知识 第3章 Seam的生命周期 72 3.1 Seam如何参与请求 73 3.1.1 Seam的开关 73 3.1.2 JSF Servlet:Seam的动力 74 3.1.3 通过Seam的资源Servlet访问资源 79 3.1.4 Seam的Servlet过滤器链 80 3.1.5 Seam的阶段监听器 82 3.2 没有Seam的JSF生命周期 83 3.2.1 JSF生命周期阶段 84 3.2.2 初始请求 85 3.2.3 回传 87 3.2.4 JSF生命周期的缺点 88 3.3 Seam面向页面生命周期的附加功能 90 3.3.1 pages.xml的高级编排 90 3.3.2 智能导航 92 3.3.3 Seam UI命令组件 95 3.3.4 页面参数 96 3.3.5 页面动作:先执行我 100 3.4 页面动作与导航的结合 101 3.4.1 对请求进行完整性检查 102 3.4.2 内建的页面视图 103 3.4.3 对搜索引擎友好的URL 104 3.5 Seam的JSF生命周期 106 3.5.1 阶段监听器和Servlet过滤器 106 3.5.2 概览增强的生命周期 106 3.6 用try-catch块包围生命周期 109 3.6.1 以优雅的方式处理失败 109 3.6.2 注册异常处理器 109 3.6.3 将异常扼杀在萌芽中 110 3.7 小结 111 第4章 组件及其上下文 113 4.1 Seam的上下文命名容器 113 4.1.1 Seam的上下文模型 114 4.1.2 统一了Java的Servlet上下文 114 4.1.3 Seam中新的有状态上下文 115 4.1.4 Seam中增强的Servlet上下文 116 4.2 组件的分类 117 4.2.1 组件与组件实例 117 4.2.2 Seam管理组件 118 4.3 用注解定义组件 119 4.3.1 给组件取个名称 120 4.3.2 给组件一个作用域 121 4.4 完整的组件范例 122 4.4.1 创建实体组件 122 4.4.2 准备动作Bean组件 126 4.4.3 集成测试组件 127 4.4.4 让组件“钩进”JSF 128 4.5 组件的一生 131 4.5.1 加载组件定义 131 4.5.2 何时安装组件 132 4.5.3 给一个组件多个角色 134 4.5.4 在启动时实例化组件 135 4.5.5 组件生命周期回调 136 4.5.6 将组件组装起来 138 4.5.7 所有组件在哪里结束生命周期 139 4.6 在Seam中使用EJB 3会话Bean 139 4.6.1 到底是谁的组件 140 4.6.2 Seam会话Bean组件的生成 141 4.6.3 整合机制 142 4.7 访问组件 146 4.7.1 访问模式 146 4.7.2 访问策略 147 4.8 小结 153 第5章 Seam组件描述符 155 5.1 利用XML定义组件 156 5.1.1 描述符的选择策略 156 5.1.2 组件描述符的结构 157 5.1.3 细粒度组件描述符 159 5.2 组件描述符中的XML命名空间 160 5.2.1 XML命名空间声明的作用 160 5.2.2 为包中的组件定义XML命名空间 163 5.2.3 如何转译XML命名空间 164 5.2.4 引入上下文变量前缀 167 5.3 配置组件属性 168 5.3.1 将组件定义成对象原型 168 5.3.2 在何处定义组件属性 169 5.3.3 属性值类型 175 5.3.4 组装组件 180 5.4 组件定义和组件配置 182 5.4.1 避免与现有定义相冲突 183 5.4.2 混和使用注解和XML 184 5.5 配置和启用内建组件 184 5.5.1 用组件描述符控制Seam 184 5.5.2 配置Seam的国际化支持 185 5.6 小结 187 第6章 IoC 189 6.1 bijection:依赖注入的演变 190 6.1.1 引入bijection 190 6.1.2 高尔夫球场上的bijection 191 6.1.3 激活bijection 191 6.2 动态的依赖注入 193 6.2.1 声明注入点 193 6.2.2 注入流程 195 6.2.3 混合作用域和可序列化的能力 197 6.2.4 注入变体 198 6.3 注出上下文变量 200 6.3.1 注出流程 200 6.3.2 注出用例 202 6.3.3 内建的数据模型支持 204 6.4 避开bijection 211 6.4.1 内部方法调用 211 6.4.2 方法上下文探秘 213 6.4.3 重入(Reentrant)方法调用 213 6.4.4 通过关闭拦截器来关闭bijection 215 6.5 组件事件 216 6.5.1 通过组件触发事件 216 6.5.2 定义事件观察者 218 6.5.3 在页面转换中触发事件 219 6.5.4 内建事件 220 6.6 自定义的方法拦截器 221 6.6.1 拦截器的利与弊 221 6.6.2 定义Seam拦截器 223 6.7 工厂和管理器组件 224 6.7.1 上下文变量@Factory 224 6.7.2 @Unwrap组件 230 6.8 小结 233 第三部分 Seam的状态管理 第7章 Seam的工作单元:对话 236 7.1 学会辨别对话的状态 236 7.1.1 重新定义工作单元 237 7.1.2 管理状态的压力 238 7.2 对话上下文 240 7.2.1 从HTTP会话中划出工作空间 240 7.2.2 可以在对话中保存什么数据 242 7.3 建立对话范围 243 7.3.1 对话的状态 243 7.3.2 启动长期对话 246 7.3.3 让对话继续 252 7.3.4 将对象收集到对话中 253 7.3.5 终止长期对话 256 7.4 将对话搁置 258 7.4.1 放弃对话 258 7.4.2 创建嵌套对话 259 7.5 对话转换 262 7.5.1 用对话作为工作空间 262 7.5.2 给对话一个说明 264 7.5.3 利用内建的对话转换器 265 7.6 用页面流驱动对话 270 7.6.1 构建页面流 270 7.6.2 了解页面流 271 7.6.3 推进页面流 273 7.6.4 处理返回按钮 275 7.7 特定的对话 276 7.7.1 生意开张 276 7.7.2 展示结果 277 7.8 小结 278 第8章 了解Java持久化 279 8.1 Java持久化原理 280 8.1.1 建立期望值 280 8.1.2 Java持久化的四大要素 280 8.2 实体和关系 281 8.2.1 映射元数据 282 8.2.2 传递性持久化 282 8.2.3 在持久层中引入注解 283 8.3 持久化单元 284 8.3.1 定义JCA数据源 284 8.3.2 持久化单元描述符 285 8.3.3 持久化管理器工厂 287 8.4 持久化管理器 287 8.4.1 获得持久化管理器 287 8.4.2 持久化管理器的管理功能 288 8.4.3 设置持久化上下文的作用域 289 8.5 事务 289 8.5.1 事务API的分类 289 8.5.2 原子工作单元 290 8.5.3 ACID缩写 291 8.6 管理企业中的持久化 292 8.6.1 扩展持久化上下文简介 292 8.6.2 扩展持久化上下文的好处 293 8.7 在JPA或Hibernate中做出选择 298 8.7.1 Hibernate和JPA之间的关系 298 8.7.2 Hibernate和JPA之间的区别 299 8.7.3 Seam的合成方法 299 8.8 小结 300 第9章 受Seam管理的持久化和事务 301 9.1 正确管理持久化上下文 301 9.1.1 尊重持久化管理器 302 9.1.2 管理扩展的持久化上下文 303 9.2 强化持久化管理器的能力 304 9.2.1 Seam的标准强化功能 304 9.2.2 让Hibernate充分发挥 307 9.3 在Seam中构建持久化单元 309 9.3.1 Seam的持久化管理器工厂 309 9.3.2 受Seam管理的持久化上下文 311 9.3.3 通过JNDI共用持久化管理器工厂 313 9.3.4 在启动时验证持久化上下文 315 9.4 Seam的事务支持 316 9.4.1 全局事务 316 9.4.2 Seam的事务抽象层 317 9.4.3 控制受Seam管理的事务 319 9.4.4 应用程序事务 321 9.5 小结 324 第10章 快速开发Seam应用程序 325 10.1 框架中的框架 325 10.1.1 持久化API的包装 326 10.1.2 持久化控制器 327 10.1.3 两种用途 329 10.2 采用Home组件的有状态CRUD 330 10.2.1 弥补Anemic Domain Model的不足 330 10.2.2 领域对象中引入Home 330 10.2.3 Home的应用 334 10.2.4 离开Home的风险 344 10.2.5 CRUD XML 349 10.3 提供反馈 351 10.3.1 自定义状态消息 351 10.3.2 创建与i18n兼容的消息 352 10.3.3 事务成功事件 353 10.4 用Query组件进行更智能的查询 354 10.4.1 创建结果集列表 355 10.4.2 对结果集分页 357 10.4.3 同时删除多个记录 359 10.4.4 对结果集排序 360 10.4.5 对结果集添加限制 362 10.5 小结 367 第四部分 深入业务需求 第11章 保护Seam应用程序安全 370 11.1 启动验证 371 11.1.1 给用户一个id 371 11.1.2 用3个步骤实现验证 372 11.1.3 概览Seam的id管理 378 11.1.4 更“基础的”验证 379 11.2 保护页面安全 381 11.2.1 JSF安全的挑战 381 11.2.2 请求验证 383 11.2.3 安全地服务页面 387 11.3 基于角色的授权 388 11.3.1 表达限制 389 11.3.2 声明基于角色的限制 391 11.4 利用Drools进行基于规则的授权 394 11.4.1 规则与角色 394 11.4.2 配置Drools 394 11.4.3 用Drools创建规则 396 11.4.4 自动侦测上下文 401 11.5 人机分离 403 11.5.1 CAPTCHA概览 403 11.5.2 在表单中添加一个CAPTCHA问讯 403 11.6 小结 404 第12章 Ajax和JavaScript远程处理 405 12.1 结合JSF使用Ajax 406 12.1.1 采用server-centric应用程序模型 406 12.1.2 Ajax4jsf和ICEfaces向JSF开启了通信渠道 406 12.1.3 Seam在基于Ajax的JSF请求中的作用 410 12.2 部分提交表单 412 12.2.1 即时校验 412 12.2.2 精通业务的校验 414 12.2.3 协助用户填写表单 415 12.3 ICEfaces的Ajax Push 416 12.4 JavaScript与Seam的远程处理 418 12.4.1 透明的Ajax 418 12.4.2 让浏览器访问Seam组件 420 12.4.3 调用服务器端组件 423 12.4.4 本地存根 426 12.5 对话的远程处理调用 429 12.5.1 加入正在进行的对话 429 12.5.2 启动对话 430 12.5.3 成批发送请求 431 12.6 响应GWT远程调用 432 12.6.1 GWT整合简介 432 12.6.2 准备远程处理服务 432 12.6.3 通过Seam远程处理GWT服务调用 433 12.7 小结 434 第13章 文件、丰富渲染和电子邮件支持 436 13.1 加载文件并渲染动态图像 436 13.1.1 接受文件加载 437 13.1.2 从原始数据渲染图像 439 13.2 用iText生成PDF 441 13.2.1 用UI组件对PDF进行排版 441 13.2.2 处理表格和单元格 445 13.2.3 添加颜色 448 13.2.4 优雅的失败和友好的文件扩展名 448 13.2.5 提供动态文件 449 13.3 用JFreeChart轻松绘制图表 451 13.3.1 图表基础知识 451 13.3.2 柱状图 452 13.3.3 线图 453 13.3.4 饼状图 454 13.4 用Seam的方式构建电子邮件 455 13.4.1 发出第一条消息 455 13.4.2 在消息中附加其他因素 458 13.4.3 在Seam中构建JavaMail 461 13.4.4 发布动态消息 464 13.5 用resource bundle定制UI 465 13.5.1 让Seam使用正确的语言 465 13.5.2 主题 468 13.6 小结 470 附录A Seam的准备工作 471 A.1 准备工作 471 A.1.1 与Java 5的兼容性 472 A.1.2 Java EE 5应用服务器 472 A.1.3 没有(JavaServer)Faces 474 A.2 下载Seam发行包 475 A.2.1 Seam的模块 475 A.2.2 诸多文件和范例 476 A.2.3 在杂乱中寻找seam-gen 476 A.3 seam-gen和Open 18范例应用程序 476 A.3.1 源代码 476 A.3.2 H2数据库 477 A.3.3 Apache Ant带动了seam-gen 477 A.3.4 随意选用RichFaces或ICEfaces 477 A.4 管理seam-gen工程中的类库 478 A.5 添加Seam作为Maven 2依赖 478 参考文献 480

主题推广




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

切换至【手机版】| 主站| Archiver|

JS of wanmeiff.com and vcpic.com Please keep this copyright information, respect of, thank you!JS of wanmeiff.com and vcpic.com Please keep this copyright information, respect of, thank you!

|网站地图

GMT+8, 2026-6-16 16:20 , Processed in 0.438907 second(s), 124 queries .

 

快速回复 返回顶部 返回列表