J2EE基础知识
- 格式:ppt
- 大小:516.50 KB
- 文档页数:78
J2EE与中间件教学大纲一、说明(一)课程性质本课程是软件工程专业必修课。
(二)教学目的课程教学目的是通过课堂教学及实践环节使学生掌握中间件基本概念和基本技术,全面了解J2EE相关技术,理解它们之间的关系以及它们在J2EE体系结构中的地位;理解基于组件的开发,过相应的实验课程的J2EE开发,让学生了解开发的各个重要环节(包括Web 应用前端开发(HTML/JSP/Applet)、应用逻辑开发(Servlet/JSP)、业务逻辑开发(Java Bean)、轻型J2EE 框架应用开发)的基本方法;理解J2EE应用服务器的作用,熟悉市场上广泛使用的应用服务器产品。
使学生加深对软件中间件知识的理解,培养与提高学生的J2EE开发能力,为学生能够综合应用软件工程知识解决实践问题的奠定基础。
(三)教学内容本课程由浅入深地介绍J2EE与中间件相关技术,Java的Web应用既是基础,又是实践的重点;中间件分布式应用以理论为主,以J2EE为实践环节。
教学内容主要包括:中间件技术导论、J2EE 体系结构简介、JSP、Java Servlet、Java Bean、Web数据库应用、Structs框架、Hibernate框架和Spring框架等各项J2EE技术。
(四)教学时数理论教学:36学时;实验学时:72学时(五)教学方式本课程是一门实践性都很强的课程,在教学中,应系统地讲授必要的理论知识,并辅之以大量的应用实例,才能够帮助学生较好地掌握所学的知识。
为此,本课程采用多媒体课件理论讲授、案例驱动、实验验证多种教学方式。
二、本文理论部分第1章中间件技术导论教学要点:分布式计算技术发展背景中间件技术基础中间件定义及特点中间件的分类中间件的发展趋势;教学时数:2学时教学内容:1.1 分布式计算技术发展背景分布计算技术发展的三个阶段;实现分布式计算的技术路线;下一代分布式计算技术;1.2 中间件概述定义:中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通讯。
《程序设计基础》课程简介课程编号:E1112101 英文名称:Programming Fundamentals学分:3 学时:48授课对象:计算机科学与技术专业,软件工程专业,网络工程专业课程目标:通过理论教学,使学生初步了解计算机软硬件系统,掌握计算机的基本使用方法使学生较好地掌握程序设计方面的知识,掌握基本的程序设计方法,具备初步的程序设计能力,并能熟练运用TC或VC集成环境进行C语言程序的编写、编译与调试。
课程内容:计算机软硬件系统基础知识,程序设计语言概述,程序设计语言基础,顺序、选择、循环结构程序设计,构造类型数据,函数,编译预处理,指针,文件等。
本课程的实验环节为独立实验课程《程序设计基础实验》。
预修课程:无《面向对象方法》课程简介课程编号:E1132103英文名称:Object-Oriented Paradigm学分:4 学时:64授课对象:计算机科学与技术、软件工程、网络工程课程目标:本课程是计算机科学与技术、软件工程、网络工程专业的一门学科基础必修课程。
本课程通过在学习面向对象概念、方法和相关理论的基础之上,着重介绍C++对面向对象的具体支持和实现,并通过具体的设计实例来使学生掌握面向对象编程技术、理解面向对象思想、了解面向对象分析和设计方法、逐步养成面向对象的思维方式,为后续课程的学习奠定基础。
课程内容:本课程以C++为面向对象程序设计语言,以面向对象思想解决实际问题为主线,逐步介绍了面向对象程序设计的基本概念,其中包括:数据抽象、对象、封装、继承、多态概念等。
在介绍这些基本概念并利用这些基本概念解决实际问题时候,渗透面向对象分析、设计方法,使学生掌握用C++实现面向对象编程并了解面向对象分析设计的基本方法。
预修课程:程序设计基础、程序设计基础实验《计算机组织与结构》课程简介课程编号:E1112104英文名称:Computer Organization & Architecture学分:3.5 学时:56授课对象:网络工程、软件工程、计算机科学与技术专业本科生课程目标:本课程是计算机类学生学习专业知识的基础,学习本课程后,学生可以了解电子数字计算机从指令和数据输入直到打印输出结果的计算机内部工作的全过程,从而建立完整的系统概念,为今后从事硬件和软件技术工作打下坚实的基础。
《J2EE企业级应用开发》课程标准一、课程定位《J2EE企业级应用开发》是计算机软件技术专业的一门专业课程,本课程所涵盖的知识和技能是作为软件技术专业学生的核心能力之一。
通过本课程的学习,使学生能够按照软件工程的理论和方法进行基于企业级JavaBean(EJB)技术的企业级应用系统的开发。
通过本课程及其实践环节教学,使学生能够使用JSP+EJB技术进行规范的Java企业级应用开发,并培养学生分析问题和解决问题的能力。
为以后进行实际的软件开发工作打下良好的专业知识和职业技能基础。
二、课程目标通过本课程的学习,培养和提高计算机软件技术专业学生的职业核心能力和素质。
使学生能够具备良好的职业素养,具备团队协作、与人沟通等多方面的能力;使学生具有较强的专业知识和技能,并具备进行自我专业知识拓展的能力。
让学生尽可能地达到入职即可工作,尽可能地做到与企业需求的“无缝结合”。
1、知识目标本课程涵盖了以下知识目标:(1)熟悉软件开发的基本流程;(2)熟悉Java EE应用和开发环境(Eclipse + Weblogic)的搭建和使用;(3)掌握无状态会话Bean(Session Bean)开发技术;(4)掌握有状态会话Bean(Session Bean)开发技术;(5)掌握Bean管理持久化实体Bean(BMP)的开发技术;(6)掌握容器管理持久化实体Bean(CMP)的开发技术;(7)了解消息驱动Bean的工作原理;(8)掌握JSP/Servlet技术、会话Bean开发技术和实体Bean开发技术的整合应用;2、能力目标(1)能查阅英文版的相关技术手册;(2)能通过团队协作完成软件项目的开发;(3)能对软件开发过程中遇到的各种错误和异常进行分析和排错;(4)能采用软件工程的思想和方法设计和实现企业级的应用软件项目;4、素质目标(1)具有良好的沟通表达能力、团队协作精神。
(2)具有良好的心理素质,顽强的意志力,勇于克服困难;(3)具有较强的身体素质,适应艰苦工作需要;(4)具有较扎实的业务基础,并能不断进行创新和自我超越。
J3EE的组成J2EE的核心技术EJB — J2EE的基石:EJB服务器是:管理EJB容器的高端进程或应用程序,并提供对系统服务的访问。
EJB服务器也可以提供厂商自己的特性,如优化的数据库访问接口,对其他服务(如CORBA服务)的访问。
一个EJB服务器必须提供支持对JNDI的名字服务和TS事务服务的可访问。
EJB分为两种:会话EJB和实体EJB,会话EJB向客户提供一定的服务,如:特定的商业逻辑、数据库查询等;而实体EJB则代表数据对象,通常代表的是数据表记录集的一行,一个实体EJB可以同时与多个客户进行交互。
CORBA技术:CORBA(Common Object Request Broker Architecture)是一个分布式对象体系结构,它独立于平台,也独立于语言。
在这个体系结构中,一个对象可以被本机上的客户或远程客户通过方法激活来存取。
客户(一个对象或应用)无须知道被调用对象(称为服务对象)的运行环境,也无须知道实现这个对象的编程语言,客户只要知道服务对象的逻辑地址和提供的接口。
这种互操作性的关键是IDL(Interface Definition Language、接口定义语言),IDL说明对象接口中的方法,这些方法可以被其它对象(或应用)激活。
RMI技术:RMI(Remote Method Invoke)是一种被EJB使用的更底层的协议,正如其名字所表示的那样,RMI协议调用远程对象上方法,使用序列化方式在客户端和服务器端的对象之间传递数据。
RMI和CORBA相比:两者的关键差别在于语言环境,Java RMI是一个分布式对象计算的纯Java解决方案(如,在Java RMI中,对象的接口用Java定义,而不是用IDL);其次,CORBA没有定义安全服务,而Java RMI继承了Java的安全性;再者,CORBA有不同的实现,不同的独立软件开发商的不同实现均有独特性,这使得在不同平台上的匹配比较困难,而且不是所有CORBA产品开发商都支持所有平台,而几乎所有平台都支持Java虚拟机,因此Java RMI具有更高的可移植性。
EJBEJB(Enterprise Java Bean,企业Bean),是基于Java的服务器端组件架构技术。
借助于EJB,开发者能够轻松的构件企业级的、分布式组件应用。
与此同时,在不用自身开发复杂分布式组件框架的前提下,开发者能够开发架构灵活、运行可靠及安全的应用系统。
对于服务器端开发而言,EJB引入了快速应用开发(Rapid Application Development,RAD)模型。
因此,在Java应用服务器提供商提供的肯定不是基础框架(比如,J2EE应用服务器)的基础之上,开发者能够快速、轻松地构建服务器端组件。
EJB的重要设计初衷是保证应用能够在任意提供商开发的企业中间件服务上畅行无阻,而且其便携性、可重用性都是一流的【1】。
背景简单地讲,EJB就是组件,何谓组件?1966年,面向组件编程(ECOOP)的欧洲工作组提出了以下定义:“软件组件是一个具有契约式特定接口和显示语境从属的组成单元。
软件组件能被独立地部署并从属于第三方的组成。
”从定义中能看出三个很重要的特性:●特定接口●显示从属●部署能力软件组件:宿主于普林斯顿大学的在线服务(/perl/webwn)将组件(component)定义的非常简单:事物的抽象部分(an abstract part of something)。
软件组件是组件的具体化过程,它是事物的具体部分。
软件组件是由程序代码构成的,它将抽象概念的行为进行具体化。
通常,我们能够在现实生活中找到这些抽象概念对应的真实基础。
比如,MortgageDebt组件能够将现实生活中实际发生的抵押贷款过程展示清楚,而且它还会讲涉及到的人、公司等信息也描述出来。
当然,组件与对象是两种不同的事物,它们存活于独立空间。
下面给出他们间的差异性。
组件是非常独立的实体。
只要真正掌握了组件的具体语义,开发者才能够在类似应用或完全不同的应用中重用它们。
通常,组件本身都含有运行自身所需的各类文件,因此它们能够独立于具体应用,而且能够在不同场合重用它们。