Java EE企业应用(yòng)系统架构最佳实践和案例分(fēn)析

Java EE企业应用(yòng)系统架构最佳实践和案例分(fēn)析
    马上咨询


    刘捷  曾任BEA中國(guó)专业服務(wù)部 高级架构师顾问

    现任职Oracle架构咨询顾问,帮企业诊断架构性能(néng)问题,曾任职BEA(中國(guó))资深软件架构师,十余年的企业软件架构、开发和管理(lǐ)经验, 侧重于企业应用(yòng)软件架构设计.主要负责客户大型项目的架构设计和研发。
     作為(wèi)技术专家保证项目的成功实施,运行和维护。参加过全國(guó)/全省多(duō)个大型的计算机应用(yòng)项目,擅長(cháng)的领域包括電(diàn)信,金融、税務(wù),大型互联网web2.0应用(yòng)等。此前就职于IBM,任软件架构师。 在此之前曾任日本东京一家软件企业的资深技术顾问。

    技术能(néng)力:

    DB,UNIX,J2EE,SOA,WebLogic Server, WebLogic Integration, WebLogic Portal相关的架构设计。

    课程简介

    这门课程适合对基于Java EE技术的企业软件系统负有(yǒu)总體(tǐ)软件架构的學(xué)员。學(xué)员还要求能(néng)深入了解企业架构师的作用(yòng),并希望在n层企业系统中使用(yòng)Java EE技术。现有(yǒu)的架构师也可(kě)以通过學(xué)习这门课程,了解如何使用(yòng)Java EE技术提高其企业系统中服務(wù)的质量。

    目标收益

    1. 软件架构的本质
    2. 软件架构的设计过程
    3. 软件架构模式
    4. 深入理(lǐ)解J2EE和架构模式和反模式,以及如何对架构重构
    5. 深入理(lǐ)解J2EE架构各层(表示层/业務(wù)逻辑层/数据存取层/基础服務(wù)层/实體(tǐ)层)如何设计和如何权衡
    6. 深入理(lǐ)解J2EE 技术(JSP,TagLib,Ajax,EJB,JPA以及常见的开源技术Spring和Hibernate,Ibatis)
    7. 充分(fēn)运用(yòng)Java EE组件技术,解决典型的系统架构问题
    8. 使用(yòng)Java EE蓝图中的技术和Java EE 模式目录中的解决方案,推导出软件系统
    9. 使用(yòng)工程权衡技术,用(yòng)高性价比的方式应对服務(wù)

    培训对象

    这门课程适合对基于Java EE技术的企业软件系统负有(yǒu)总體(tǐ)软件架构的學(xué)员。學(xué)员还要求能(néng)深入了解企业架构师的作用(yòng),并希望在n层企业系统中使用(yòng)Java EE技术。现有(yǒu)的架构师也可(kě)以通过學(xué)习这门课程,了解如何使用(yòng)Java EE技术提高其企业系统中服務(wù)的质量。

    课程大纲

    内容一:介绍基本的架构概念
    1. 理(lǐ)解企业应用(yòng)中的难题
    2. 定义软件架构
    3. 理(lǐ)解软件架构需求
    4. 理(lǐ)解架构师的作用(yòng)、责任和交付项目
    5. 理(lǐ)解使用(yòng)统一建模语言(UML)的架构模型
    6. 理(lǐ)解架构与设计之间的差别和相似点

    内容二:理(lǐ)解架构质量属性度量
    1. 描述企业应用(yòng)的系统性度量
    2. 描述用(yòng)于改善系统性度量的一般做法
    3. 对服務(wù)质量(QoS)的要求划分(fēn)优先级
    4. 检查是否存在良好的机遇,并进行权衡
    5. 结合实际项目案例分(fēn)析,质量属性的权衡

    内容三:J2EE核心技术
    1. J2EE平台概述
    2. Web应用(yòng)技术
    3. Servlet,JSP,JSPTaglib,JSF
    4. EJB技术,JMS,JTA,JNDI
    5. JDBC,JPA
    6. Java EE5 新(xīn)特性
    7. 基于J2EE 核心技术的架构

    内容四:J2EE开源框架
    1. Better,Faster,Lighter Java
    2. 经常使用(yòng)的J2EE开源框架
    3. Web层常见框架Struts1/2,Webwork,JSF
    4. 业務(wù)逻辑层常见开源框架
    5. 数据存取层常见开源框架

    内容五:J2EE技术和其他(tā)对比(.Net, Ruby/Rails,LAMP)
    1. J2EE技术和。Net技术对比
    2. J2EE技术和Ruby/Rails技术对比
    3. J2EE技术和相关PHP技术对比

    内容六:检查系统架构应于开发的风险
    1. 了解分(fēn)布式企业系统的关键风险因素
    2. 设计灵活的对象模型
    3. 理(lǐ)解创建网络模型的指导原则
    4. 验证事務(wù)/异常/性能(néng)/安全的设计
    5. 规划系统容量

    2ndDay 内容一:J2EE分(fēn)层架构模式
    1. J2EE架构模式
    2. 表示层的设计原则和注意事项
    3. 业務(wù)逻辑层的设计原则和注意事项
    4. 持久化层的设计原则和注意事项
    5. 基础服務(wù)架构层设计原则和注意事项
    6. 业務(wù)实體(tǐ)层的设计原则和注意事项

    内容二:开发客户端层的架构
    1. 理(lǐ)解信息架构客户端层的注意事项
    2. 理(lǐ)解如何选择满足具體(tǐ)应用(yòng)要求的用(yòng)户界面设备
    3. 描述如何在客户端层上实现重复使用(yòng)
    4. 理(lǐ)解开发基于Java桌面的应用(yòng)的策略
    5. 熟悉客户端层的安全注意事项

    内容三:Web层的架构
    1. 描述与开发Web层相关的角色
    2. 理(lǐ)解分(fēn)离注意事项
    3. 描述有(yǒu)关实施Web层展示问题的策略
    4. 描述有(yǒu)关实施Web层数据问题的策略
    5. 描述有(yǒu)关管理(lǐ)Web层展示、数据和逻辑问题的策略
    6. 理(lǐ)解面向请求的和面向组件的Web层框架的优点和缺点
    7. 描述有(yǒu)关在Web层中实施验证和授权的策略
    8. 解决Web应用(yòng)扩展问题

    内容四:基于Ajax技术架构

    1. 传统BS应用(yòng)系统的缺点
    2. RIA应用(yòng)的诞生原因
    3. Ajax应用(yòng)系统
    4. 基于Ajax的BS架构

    内容五:基于Struts1/2技术架构
    1. 开发基于Struts的Web应用(yòng)程序
    2. 将MVC应用(yòng)于您的应用(yòng)程序架构
    3. 使用(yòng)单元测试来测试Struts应用(yòng)程序
    4. 运用(yòng)重要的Struts最佳实践
    5. 使用(yòng)常用(yòng)的Struts扩展功能(néng)提高生产效率
    6. 保护Struts应用(yòng)程序的安全

    内容六:基于JSF技术架构
    1. 使用(yòng)基于组件和事件驱动的JavaServer Faces框架开发Web应用(yòng)程序
    2. JSF的应用(yòng)与开发
    3. JSF组件的开发
    4. JSF最佳实践

    3rdDay 内容一:业務(wù)逻辑层的架构
    1. 理(lǐ)解有(yǒu)关使用(yòng)企业应用(yòng)容器服務(wù)的价值
    2. 描述用(yòng)于实施域模型服務(wù)的架构选项
    3. 描述用(yòng)于实施域模型实體(tǐ)的架构选项
    4. 分(fēn)发域模型组件
    5. 理(lǐ)解例外处理(lǐ)和日志(zhì)的最佳做法

    内容二:基于EJB业務(wù)逻辑层的架构
    1. 深入理(lǐ)解EJB原理(lǐ)和EJB30新(xīn)特性
    2. EJB的核心服務(wù)
    3. EJB事務(wù)管理(lǐ)
    4. EJB异常处理(lǐ)
    5. EJB拦截服務(wù)
    6. 如果基于EJB技术进行构建业務(wù)逻辑层
    7. EJB项目经验

    内容三:基于Spring业務(wù)逻辑层的架构
    1. Spring轻量级容器技术
    2. Spring的Ioc/DI技术
    3. Spring的数据存取技术
    4. Spring AOP技术
    5. Sping事務(wù)管理(lǐ)
    6. Spring在业務(wù)逻辑层的应用(yòng)
    7. Spring项目经验

    4thDay内容一:开发集成和资源层的架构
    1. 描述与企业信息系统(EIS)集成相关的难题
    2. 描述集成层的角色
    3. 描述EIS资源层
    4. 回顾Java集成技术和最佳做法,以及和其他(tā)系统集成
    5. 数据存取架构模式
    6. 数据存取架构技术发展
    7. 数据存取架构的策略
    8. 数据存取层事務(wù)和连接管理(lǐ)模式

    内容二:数据存取技术基石-JDBC
    1. JDBC概述和JDBC Driver类型选择
    2. 使用(yòng)JDBC进行数据库访问和JDBC 核心类
    3. JDBC连接池的原理(lǐ)和使用(yòng)
    4. DataSource原理(lǐ)和使用(yòng)
    5. JDBC3.0/4.0新(xīn)特性
    6. 数据存取层的性能(néng)监控和调优(结合应用(yòng)服務(wù)器)

    内容三:基于ORM数据存取技术-Hibernate和JPA
    1. J2EE数据存取技术
    2. Hibrnate映射技术
    3. Hibernate 对象实體(tǐ)级联
    4. Hinbernate缓存处理(lǐ)
    5. Hinbernate并发控制与锁的管理(lǐ)
    6. Hinbernate事務(wù)管理(lǐ)
    7. JPA技术概述
    8. Hinbernate项目经验

    内容四:基于SQLMapper数据存取技术-IBatis
    1. What is iBATIS?
    2. Working with mapped statements
    3. Executing nonquery statements
    4. Using advanced query techniques
    5. Transactions
    6. Using Dynamic SQL
    7. Improving performance with caching

    内容五:J2EE架构的事務(wù)管理(lǐ)
    1. 事務(wù)的概述
    2. 本地事務(wù)和分(fēn)布式事務(wù)JTA
    3. 本地事務(wù)的管理(lǐ)的模式
    4. 分(fēn)布式事務(wù)管理(lǐ)的模式
    5. 声明方式和编程方式事務(wù)管理(lǐ)
    6. 事務(wù),锁,并发

    内容六:J2EE架构的安全管理(lǐ)
    1. 分(fēn)析分(fēn)布式计算环境中的安全影响
    2. 理(lǐ)解Java EE技术中的安全服務(wù)
    3. 理(lǐ)解Web服務(wù)的安全要求
    4. 基于Spring Acegi安全架构设计

    内容一:J2EE架构时性能(néng)考虑
    1. 架构时的性能(néng)考虑
    2. J2EE项目调优概述
    3. 利用(yòng)应用(yòng)服務(wù)器的调优
    4. web层架构的性能(néng)考虑
    5. 业務(wù)逻辑的性能(néng)设计考虑
    6. 数据访问层的性能(néng)

    内容二:J2EE架构模式
    1. 描述J2EE模式的哲學(xué)
    2. 描述J2EE模式體(tǐ)系中的J2EE模式和层
    3. 介绍表示层模式
    4. 介绍业務(wù)逻辑层模式
    5. 介绍数据访问层模式
    6. 定义反模式
    7. 描述集成层反模式
    8. 描述业務(wù)层反模式
    9. 描述展示层反模式

    内容三:J2EE架构设计专题技术
    1. J2EE异常处理(lǐ)
    2. J2EE事務(wù)管理(lǐ)
    3. 缓存技术在架构之中的应用(yòng)
    4. AOP技术在架构之中的应用(yòng)
    5. J2EE架构的数据校验
    6. 可(kě)扩展性和可(kě)靠性对架构的影响
    7. 安全性在架构的考虑
    8. 分(fēn)布式计算中数据传输的特点
    9. 多(duō)个实际项目的架构分(fēn)析(為(wèi)何这样设计/优点/缺点/当初的考虑)

    内容四:J2EE架构案例
    1. 電(diàn)信行业J2EE架构项目案例分(fēn)析
    2. 電(diàn)力行业J2EE架构项目案例分(fēn)析
    3. 政府行业J2EE架构项目案例分(fēn)析
    4. 金融行业J2EE架构项目案例分(fēn)析
    5. 重点分(fēn)析為(wèi)何这样设计/优点/缺点/当初的考虑