资源预览内容
第1页 / 共64页
第2页 / 共64页
第3页 / 共64页
第4页 / 共64页
第5页 / 共64页
第6页 / 共64页
第7页 / 共64页
第8页 / 共64页
第9页 / 共64页
第10页 / 共64页
亲,该文档总共64页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
JavaEE架构与设计及发展趋势 王晓华wangxh 章节目录 章节目录 从两种应用看发展趋势 从两个层面看发展趋势 JavaSE每个版本特征 Java5特性 泛型 GenericType自动封装Autoboxing Unboxing循环的增强枚举类型可变参数静态导入注解 Annotation Java6特性 与Java5相比 Java6在性能方面有了不错的提升可以直接调用脚本语言现有Java库能被各种脚本语言所利用 节省了开发成本缩短了开发周期 其次 可以把一些复杂异变的业务逻辑交给脚本语言处理 提高开发效率XMLAPI与Web服务XML处理主要包括两个功能 XML处理 JAXP JavaArchitectureXMLProcessing 和XML绑定 JAXB JavaArchitectureXMLBinding JAXP包括SAX DOM StAX XSLTJAXB则是负责将XML文件和Java对象绑定 在新版JDK中 被大量的使用在Web服务技术 JavaEE的版本变迁 JavaEE应用体系架构 JavaEE5 EoD宣言 Domorewithlesswork 这是JavaEE5 0的正式宣言 也是其与J2EE1 4最显著的区别 JavaEE5 如何实现简化开发 JavaEE5实现EoD的策略基于POJO的编程更自由 要求更少 约定优于配置Annotation的扩展使用 非常关键 减少部署描述符的使用资源注入Inversionofcontrol新的API和框架 JSF JavaEE5 不得不说的Annotation 定义和使用webservices映射Java类和XML大大简化EJB开发映射Java类到数据库指定扩展的依赖关系减少部署描述符 Resource name myDB type javax sql DataSource StatefulpublicclassShoppingCartBeanimplementsShoppingCart ResourceSessionContextctx publicCollectionstartToShop StringproductName DataSourceproductDB DataSource ctx lookup myDB Connectionconn myDB getConnection JavaEE5 不得不说的Annotation JavaEE6特性 灵活性Profiles 侧面 Pruning 精简 新特性Servlet3 0EJB3 1JPA2 0JSF2 0DependencyInjection Profiles 侧面 很多应用并不需要使用全套的JavaEEAPI Profiles是JavaEE技术子集 可以为特定应用使用 Servlet3 0 易于开发增强了API以便使用SE5中新的语言特性例如 批注 泛型 Generics 部署描述批注现在web xml为可选用于保证API类型安全的泛型 Generics 惯例优先原则 Conventionover Web开发核心技术 Servlet 逐渐被隐藏JSP Java脚本越来越少JSTL 有很多类似标记库EL 结合JSTL使用JDBC JDBC4 0有很多改进noSQL数据库JNDI 数据源 章节目录 JavaEE应用体系架构 分层看框架 客户端 Ajax服务器端Web层 Struts2 JSF资源访问层 Hibernate iBatis整合 Spring 客户端 RIA是趋势 RIA含义 RIA具有的桌面应用程序的特点 在消息确认和格式编排方面提供互动用户界面 在无刷新页面之下提供快捷的界面响应时间 提供通用的用户界面特性 如拖放式 draganddrop 以及在线和离线操作能力 RIA具有的Web应用程序的特点 立即部署 跨平台 采用逐步下载来检索内容和数据以及可以充分利用被广泛采纳的互联网标准 RIA具有通信的特点 实时互动的声音和图像 客户端 Ajax概述 AJAX是一种实现RIA的方案Ajax是 AsynchronousJavaScriptandXML 的简称 即异步的JavaScript和XMLAjax就是能够在Web浏览器中实现与桌面应用类似客户端的技术Ajax并不能算一个新的技术 而是几种成熟技术的使用技巧Ajax技术主要包含四个组件 即JavaScript CSS DOM以及XMLHttpRequest对象 AJAX JavaScript语言 在Ajax技术中 JavaScript起着至关重要的作用 贯穿始终JavaScript是Internet上最流行的脚本语言 往往直接插入到HTML中JavaScript可以定义变量 函数 支持事件驱动的模式JavaScript中定义了很多简单对象 如字符串 日期等JavaScript中定义了很多HTMLDOM对象 如document等 AJAX XMLHttpRequest对象 XMLHttpRequest是Ajax技术的核心对象 使用Ajax都是从创建XMLHttpRequest对象开始XMLHttpRequest对象是一个浏览器内部的对象 可以用来发送HTTP请求并接收HTTP响应XMLHttpRequest对象中封装了一系列的属性和方法status属性responseText属性responseXML属性onreadystatechange属性open方法send方法 AJAX 文档对象模型DOM Ajax技术中 通常使用DOMAPI操纵客户端页面DOM是DocumentObjectModel的简称 即文档对象模型 是W3C组织推荐的处理结构化文档标准编程接口DOM可以分为三部分 分别是核心部分 HTML部分以及XML部分DOM独立于编程语言 很多种语言都实现了DOMAPI 在Ajax技术中 主要使用JavaScript语言使用DOM AJAX HTMLDOM HTMLDOM是专门用来针对HTML文档编程的APIHTMLDOM将HTML文档看成一棵节点树 HTML文档的每个部分都是树上的一个节点HTMLDOM中定义了一系列的HTMLDOM对象 用来表示HTML文档中的元素 包括document form button等任何一个HTML文档被浏览器加载后 都会成为一个document对象 在JavaScript脚本语言中 可以直接使用document对象访问HTML中的任何元素 AJAX XMLDOM 与HTMLDOM类似 XMLDOM定义了所有XML元素的对象和属性 以及访问它们的方法XMLDOM将XML文档看做一棵节点树 文档中的每一个元素都是一个节点在Ajax技术中 可以直接使用XMLHttpRequest的responseXML属性直接封装服务器端返回的XML文档 进一步调用XMLDOM的方法和属性解析XML AJAX框架 jQuery jQuery是Ajax的一个框架 设计思想简洁 以选择DOM对象开始jQuery是一款免费且开放源代码的JavaScript代码库链式语法 p surprise addClass ohmy show slow CSS1 3选择器 支持CSS选择器选定DOM对象 跨浏览器 支持InternetExplorer6 Opera9 Firefox1 5 Safari2 简单 较其它JavaScript库更易于入门 子项目jQueryUI 基于jQuery的用户界面库 包括菜单 工具条 拖放 缩放 对话框 表格排序等多个组件 jQueryFX 基于jQuery的网页特效库 包括元素渐进式显示 隐藏等功能 Ajax框架 dojo 背后强大的支持 IBM Sun BEA等功能的强大 扩展了DHTML的能力支持与浏览器Back Forward按钮的集成Chart组件 可以方便地在浏览器端生成图表GoogleMaps Yahoo Maps组件 方便开发Mashup应用学习困难 页面大量使用dojo属性 侵入性大 Ajax框架 Ext 有较好的性能面向对象和组件化的思想文档完整 规范 方便所有的组件 widgets 都可直接使用 而无需进行设置 RIA其他方案 JavaFX JavaFX是Sun公司2007年发布的 准备替代Applet的一种技术或者平台 人们称它为 下一代Applet Flex Flex一般指AdobeFlex 是一个高效 免费的开放源框架 可用于构建具有表现力的Web应用程序 这些应用程序利用AdobeFlashPlayer和AdobeAIR 运行时跨浏览器 桌面和操作系统实现一致的部署 SilverLight Silverlight就是微软用来进军RIA市场的武器 Struts2与Struts1本质上没有太大联系Struts1最初是ApacheJakarta项目的一部分 后来作为一个开源的MVC框架存在Struts2是从WebWork框架上发展起来的 与Struts1没有直接关系 Web层框架 Struts2概述 用户提交请求请求将被FilterDispatcher过滤FilterDispatcher调用ActionMapperFilterDispatcher将请求处理交给ActionProxyActionProxy通过ConfigurationManager查找struts xmlActionProxy实例化ActionInvocationActionInvocation实例调用与Action有关的拦截器以及Action类的execute方法根据struts xml中配置的action的result 将面导航到指定的URL Web层框架 Struts2工作流程 Action中的execute方法没有参数 可以脱离容器环境进行单元测试通过拦截器更为便捷地获得请求参数页面导航不需要硬编码到源代码中支持多种视图技术强大的JSP标记库 Web层框架 Struts2特点 下载并导入Struts2框架的相关jar包开发Model层业务逻辑开发视图文件开发Action类在struts xml中配置Action类在JSP中调用Action在web xml中配置FilterDispatcher Web层框架 Struts2实例开发 Web层框架 JSF框架概述 JSF技术是一种服务器端框架 它提供了一种基于组件的Web应用开发方式掌握JSF框架 主要需要了解以下内容UI组件配置文件前端控制器FacesServlet国际化 校验等 资源访问层框架 Hibernate概述 Hibernate是一个ORM框架Hibernate框架主要作用是简化应用的数据持久层编程掌握Hibernate框架需要掌握以下三个方面持久化对象 PersistentObject Hibernate属性文件 hibernate properties Hibernate映射文件 XMLMapping Hibernate 简单Demo基本步骤 配置DataBaseDriver逆向工程生成PO类以及hbm xml文件修改hibernate cfg xml文件 添加必要属性编写测试代码 对数据库表记录进行增删改查操作 Hibernate 持久化类 实现业务实体的类 被称为持久化类 PersistentClass 必须提供public的无参构造方法必须提供一个标识属性 IdentifierProperty 类的属性都是private权限为属性提供getXXX和setXXX方法 Hibernate 对象状态 持久化类的对象有三种状态瞬时状态 transientstate 持久状态 persistentstate 脱管状态 detachedstate Hibernate Hibernate属性配置 Hibernate框架使用连接池维护数据库连接Hibernate发布包包含了C3P0和Proxool连接池hibernate cfg xml文件的基本结构如下 Hibernate HQL语言 Hibernate框架提供了HQL HibernateQue
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号