本教材一共6个项目,项目1为SOA基础知识导入,主要介绍了SOA的基本概念、发展历程,与企业IT战略之间的关系;项目2介绍了Web服务的相关基础知识,包括Web服务的体系结构特性、服务规范、SOAP、WSDL、UDDI等;项目3介绍了ESB的相关知识,明确了ESB与EAI之间的关系,介绍了SOA思想针对实际问题的具体实现思路,重点讲解了iESB引擎和iESB设计器的安装配置方法;项目4至项目6比较了REST和SOAP两种WebService方式的差别,并通过模拟校园中常见的多个信息系统整合开发应用场景,介绍了iESB暴露出来的服务在多系统的整合当中是如何被调用的以及不同的系统之间如何通过iESB实现数据共享,从而加深了对数据共享与数据整合技术在实际应用中的解读。本书在内容上贯穿以“学习者”为中心的设计理念,教材内容以“学”和“导学”交织呈现,相信能以通俗易懂的方式为学习者呈现其所需的教学内容。
1. 双线并行:教材的内容组织强调以学习行为为主线,构建了“学”与“导学”的双线逻辑。“学”是主体内容,包括项目描述、任务解决及项目总结;“导学”是引导学生自主学习、独立实践的部分,包括项目引入、交互窗口、思考练习、拓展训练及双创项目。
2.情景化的项目引入:书中模拟一个完整的项目团队,采用情景剧作为项目开篇,并融入职业元素,让课程更加接近于行业、企业和生产实际。还原工作场景,展示项目进程,嵌入岗位、行业认知,融入工作的方法和技巧,传递一种解决问题的思路和理念;
3.知识输入,技能输出:本书的项目篇章以项目为核心载体,强调知识输入,经过任务的解决与训练,再到技能输出。采用“两点(知识点、技能点)”“两图(知识图谱、技能图谱)”的方式梳理知识、技能,在项目开篇清晰地描绘出该项目所覆盖的和需要的知识点,在项目最后总结出经过任务训练所能获得的技能图谱;
4.强调动手和实操:本书以解决任务为驱动,做中学,学中做。任务驱动式的学习,可以让我们遵循一般的学习规律,由简到难、循环往复、融会贯通;加强实践、动手训练,在实操中学习更加直观和深刻;融入最新技术应用,结合真实应用场景,来解决现实性客户需求。
5.具有创新特色的双创项目设计:教材结尾设计双创项目与其他教材形成呼应,体现了项目的完整性、创新性和挑战性。既能培养学生面对困难勇于挑战的创业意识,又能培养学生使用新技术解决问题的创新精神。
姜善永:男,毕业于清华大学工程物理专业,学士学位。曾任职海信集团技术中心、宁波市烽火电子技术有限公司总经理、上海丰和科技有限公司和上海东远电子设备有限公司总经理,现任北京华晟经世信息技术有限公司副总裁,深圳清大协力科技有限公司总经理。
项目1 SOA基本概念初探 1
1.1 任务一:什么是SOA 3
1.1.1 SOA的基本概念 3
1.1.2 SOA发展的驱动力 6
1.1.3 任务回顾 11
1.2 任务二:SOA技术概览与企业IT战略 12
1.2.1 SOA的主要组件和技术标准 12
1.2.2 SOA与企业IT战略 16
1.2.3 任务回顾 19
1.3 项目总结 20
1.4 拓展训练 21
项目2 Web服务基础知识导入 23
2.1 任务一:了解Web服务标准 24
2.1.1 开放的统一技术标准的意义 24
2.1.2 Web服务简史与相关标准化组织 26
2.1.3 Web服务体系结构与特性 29
2.1.4 Web服务规范简介 31
2.1.5 任务回顾 38
2.2 任务二:简单对象访问协议(SOAP) 39
2.2.1 SOAP简介 39
2.2.2 SOAP消息处理机制 40
2.2.3 SOAP对于传输协议的独立性 43
2.2.4 SOAP编码 45
2.2.5 SOAPUI WebService测试介绍 46
2.2.6 任务回顾 56
2.3 任务三:WebService描述语言(WSDL) 57
2.3.1 WSDL规范简介 58
2.3.2 WSDL文档格式 59
2.3.3 WSDL SOAP 绑定 62
2.3.4 Java 6 WSDL开发简单案例 64
2.3.5 任务回顾 69
2.4 任务四:统一描述、发现和集成规范(UDDI) 70
2.4.1 UDDI信息模型 70
2.4.2 UDDI与WSDL 74
2.4.3 其他服务发现机制 76
2.4.4 任务回顾 77
2.5 项目总结 77
2.6 拓展训练 78
项目3 企业服务总线(ESB)认知 81
3.1 任务一:了解企业服务总线 82
3.1.1 为什么需要ESB 83
3.1.2 ESB是EAI的进化 85
3.1.3 ESB与循环依赖 87
3.1.4 ESB版本控制与监控 92
3.1.5 任务回顾 93
3.2 任务二:企业服务总线的安装配置 94
3.2.1 环境要求 95
3.2.2 安装前的准备 95
3.2.3 数据库安装 96
3.2.4 安装开发环境 99
3.2.5 安装生产环境 103
3.2.6 任务回顾 105
3.3 任务三:iESB设计器环境搭建及常用操作 106
3.3.1 iESB设计器环境搭建 107
3.3.2 创建iESB工程 108
3.3.3 iESB服务资源设置 110
3.3.4 任务回顾 114
3.4 项目总结 115
3.5 拓展训练 115
项目4 SOAP方式WebService接口的开发与调用 117
4.1 任务一:WebService接口认知 117
4.1.1 接口简介 119
4.1.2 实现Web服务接口的不同方式 120
4.1.3 REST简介 123
4.1.4 任务回顾 125
4.2 任务二:REST和SOAP两种WebService方式的比较 125
4.2.1 应用场景介绍 126
4.2.2 使用 REST 实现 Web 服务 126
4.2.3 使用SOAP实现Web服务 131
4.2.4 REST与SOAP比较 133
4.2.5 任务回顾 136
4.3 任务三:SOAP WebService接口开发 137
4.3.1 Java世界中优秀的WS开源项目介绍 137
4.3.2 使用RI开发WS 138
4.3.3 使用CXF内置的Jetty发布WS 141
4.3.4 在Web容器中使用Spring+CXF发布WS 145
4.3.5 CXF提供WS客户端的几种方式 152
4.3.6 任务回顾 155
4.4 任务四:天气预报SOAP WebService接口调用 156
4.4.1 在iESB设计器中创建天气预报Web服务工程项目 157
4.4.2 在iESB设计器中完成天气预报Web服务的暴露和参数设置 159
4.4.3 将天气预报Web服务部署到企业服务总线上并进行服务调用测试 165
4.4.4 通过客户端程序调用iESB平台上暴露的WebService接口 169
4.4.5 任务回顾 174
4.5 项目总结 175
4.6 拓展训练 176
项目5 REST方式WebService接口的开发与调用 177
5.1 任务一:REST WebService接口开发 178
5.1.1 REST WebService接口开发——教务管理系统简介 178
5.1.2 教务管理系统数据库分析与设计 181
5.1.3 教务管理系统REST WebService接口代码实现 188
5.1.4 教务管理系统REST WebService接口功能测试 229
5.1.5 任务回顾 232
5.2 任务二:教务管理系统REST WebService接口调用 233
5.2.1 在iESB设计器中创建教务管理系统Web服务工程项目 233
5.2.2 在iESB设计器中完成教务管理系统Web服务的暴露和参数设置 234
5.2.3 将教务管理系统Web服务部署到iESB中并进行服务调用测试 240
5.2.4 任务回顾 246
5.3 项目总结 247
5.4 拓展训练 247
项目6 基于SOA的多系统整合开发与应用 249
6.1 任务一:通过iESB获取学生信息的饭卡计费管理系统整合开发 250
6.1.1 饭卡计费管理系统简介 250
6.1.2 饭卡计费管理系统数据库分析与设计 252
6.1.3 饭卡计费管理系统代码实现 254
6.1.4 任务回顾 278
6.2 任务二:实验管理系统整合改造 279
6.2.1 实验管理系统整合改造项目背景介绍 280
6.2.2 实验管理系统用户登录模块整合改造 281
6.2.3 实验管理系统课程分配模块整合改造 308
6.2.4 任务回顾 317
6.3 项目总结 318
6.4 拓展训练 319