AssemblyLanguageProgramming主讲:马建红电话:63887290办公室:水环楼307邮箱:majianhong@zzu.edu.cnJSP应用开发技术JSP应用与开发技术1、课程的地位、先修课程本课程是一门专业必修课程,它主要讲授如何使用JSP程序设计的原理、方法和技术开发基于B/S架构的动态网站。先修课程:要求学习者具备一定的Java程序设计基础,因此必须先修《Java程序设计》;该课程需要操作数据库,因此必须先修《数据库原理》;另外由于牵涉网页的设计所以先修课还需要《网页设计》。23课程在专业课程体系中的地位JSP项目实训Java程序设计数据库原理网页设计J2EE程序设计Ajax程序设计SSH框架手机开发课程特点1以Java和HTML这两类语法为基础3综合以往所学知识能真正开发一个实用的项目2结合数据库应用实训的基础42、教学目标设计开发JSP动态网站应用程序设计Java应用网页设计采用MVC模式辅助标签库连接某种数据库管理系统采用JSP+JavaBean以知识为本位以能力培养为导向课程的任务掌握JSP编程技术:掌握JSP的语法;掌握JSP对文件的操作;掌握JSP对数据库的操作;掌握JSP中采用的JavaBean;掌握JSP中采用的Servlet技术;掌握MVC编程模式。课程的知识点JSP的语法JSP对文件的操作JSP对数据库的操作MVC编程模式JSP中采用JavaBeanServlet技术3、教学内容及学时分配第7章JavaBean和表单处理;第8章JSP中文件的操作。学时:8+4第4章JSP基本语法;第5章JSP内置对象;第6章使用Cookie记录信息学时:16+8第1章JSP概述;第2章JSP动态网页设计基础;第3章JSP环境配置学时:8+41、JSP编程基础与环境配置2、JSP应用开发基础3、JSP应用开发进阶第15章标准标签库(JSTL);第16章创建自定义标签库。学时:4+2总学时:72+36=108第12章Servlet基础;第13章使用Servlet过滤器和监听器;第14章使用MVC模式实现BBS论坛。学时:16+8第9章数据库操作基础;第10章应用JDBC进行数据库开发;第11章JSP数据库应用实例-留言板的设计与实现学时:16+84、JSP数据库编程基础5、Servlet技术6、标签库7、Web应用开发实例学时:4+29重点和难点JSP开发Web应用程序,如动态网站的开发;•重点JavaBean和Servlet技术,通过系统的学习,学生能够利用JSP技术进行网站的简单设计和开发。•难点4、教学资料教材《JSP应用开发详解(第三版)》《JSP应用开发技术》《JSP应用与开发技术》《JSP应用与开发技术(第2版)》教学用软件和资料FTP马建红13JSP网络资源项目分组作品展示关于教材JSP(JavaServerPages)是目前动态网站开发技术中最典型的一种。JSP继承了Java语言的优势,是一种与平台无关的开发技术,而Java技术也赋予了JSP为用户提供强大功能的技术支持。JSP语言虽然综合性地包括了Java和HTML这两类语法,但不能通过简单地使用JSP,用这种方式开发出来的Web应用程序是非常难以维护的。对JSP使用观念的建立,以及JavaBean、数据库、Servlet等技术的了解运用是利用JSP开发复杂的商业级网站的重点。13教材的组织结构本书共16章,可以分成七个部分。第一部分JSP编程基础与环境配置,包括三章:第1章JSP概述;第2章JSP动态网页设计基础;第3章JSP环境配置,介绍JSP应用技术的前导知识和开发环境的搭建。第二部分JSP应用开发基础,包括三章:第4章JSP基本语法;第5章JSP内置对象;第6章使用Cookie记录信息,详细讲解了JSP技术的基本语法。14第三部分JSP应用开发进阶,包括两章:第7章JavaBean和表单处理;第8章JSP中文件的操作。这部分主要介绍了JavaBean分离表示与实现、使用JSP处理HTML表单、使用Java类库里的I/O类,开发具备文件存取功能的网页程序。第四部分JSP数据库编程基础包括三章:第9章数据库操作基础;第10章应用JDBC进行数据库开发;第11章JSP+JavaBean+DB的实例,以MySql数据库为例详细讲解了JSP中使用数据库的操作包括JDBC、连接池、分页处理等技术。15第五部分Servlet技术包括两章:第12章Servlet基础;第13章使用Servlet过滤器和监听器;通过实例讲述了Servlet的开发和部署。第六部分标签库包括两章:第14章标准标签库(JSTL);第15章创建自定义标签库。这部分是使用JSP进行程序开发的扩展知识。第七部分第16章讲解了Web开发的具体应用。,运用MVC技术,采用三层架构,并采用了自定义标签和EL等技术展示了一个门户网站综合实例,使读者对这些技术的使用有更深刻的了解。165、考核方法考试总成绩=平时成绩(10%)+平时实践(10%)+期末大作业(30%)+期中考试(20%)+期末考试(30%)17第1章JSP概述1.1软件编程体系简介1.2企业应用开发架构1.3JSP概述1.4JSP知识体系及学习之路18本章学习目标:了解软件编程体系了解企业应用开发架构掌握JSP基本概念掌握JSP的知识体系了解JSP的学习之路191.1软件编程体系简介2021客户机/服务器(Client/Server,C/S)模式最大特点是在每个用户端需要安装程序,所有用户端程序和中心服务器进行信息交互优点是用户端程序一致,比较方便控制,服务器端和用户本地的数据很容易进行交互,通信速度比较快。缺点是每个用户都需要安装客户端,比较繁琐,而且不能很好的跨操作系统平台。C/S结构编程体系22服务器只集中管理数据,计算任务分散在客户机上,客户机和服务器之间通过网络协议来进行通讯;客户端先进行简单的预处理,将处理后的结果再提交给服务器进行进一步的处理。这种模式我们也通常成为胖客户端模式。C/S结构通常适用于具有固定的用户端或者少量的用户端,并且是对安全性要求比较高的应用。典型的系统:QQ、MSN、邮局信息管理系统、飞机票火车票售票系统。23浏览器/服务器(Browser/Server,B/S)模式客户端使用通用的浏览器(如:NetScape、Explorer)代替各种应用软件,服务器则为Web服务器。浏览器和服务器之间通过TCP/IP通信协议进行连接,浏览器发出请求,由Web服务器向后台取出数据进行处理,并将结果返回给浏览器。这种模式,我们通常将其称为瘦客户端模式。典型的系统:网上银行、网上购物、Blog等等B/S结构编程体系24B/S基础知识万维网()是世界上最大的电子信息仓库,由众多的Web站点组成。每个Web站点都包含一些特定的资源,这些资源存放于一台或多台被称作Web服务器的计算机之上。如电子商务网站(阿里巴巴等)、以及我们日常使用的百度、搜狐、新浪、淘宝等等一些系统。B/S基础知识--网页的分类:静态网页:是指一旦网页制作成功就不能随意更改或需要专业的技术人员进行修改。不能实现用户与服务器之间的交互,制作周期较长,更改困难,适应于一些不需要经常修改内容的网页。郑大学校概况静态网页及其执行过程:任何Web服务器都支持静态网页:①首先用户在浏览器的地址栏中键入要访问的地址,并回车出发请求②浏览器将请求发送到指定的Web服务器上。③Web服务器接收请求并根据htm或html后缀判断所请求的静态网页④Web服务器从硬盘或者内存中读取正确的htm页面,然后将其送回用户浏览器。B/S基础知识--网页的分类:动态网页:是指能够根据用户的请求而动态生成显示的结果。不需要维护人员经常手动更新,它能够根据不同的时间,不同的人产生不同的页面。目前绝大多数的网站采用的都是动态网页技术如JSP、ASP、PHP以及CGI技术等。动态网页技术根据实现的不同还可以分为:客户端动态网页技术服务器端动态网页技术客户端动态网页技术与静态网页非常类似:只是客户端的浏览器在接收到服务器端传送而来的资源时,还需要负责对其中的脚本进行解释执行,并产生动态效果。实现的语言有:javaScript和VBScript脚本语言。服务器端动态网页技术:服务器端动态网页技术和我们前面讨论的两种运行原理不同:①首先用户在浏览器的地址栏中键入要访问的地址,并回车出发请求②浏览器将请求发送到指定的Web服务器上。③Web服务器接收请求并根据后缀(如.jsp、php)判断所请求的动态网页。④Web服务将这个动态网页文件从头到尾执行,并根据执行的结果生成相应的HTML文件⑤将生成的HTML文件送回浏览器⑥用户端的浏览器对这些HTML文件进行解析并显示主流动态页面技术目前主要是3P技术–ASP(ActiveServerPages)–JSP(JavaServerPages)–PHP(HypertextPreprocessor)微软公司由sun公司倡导,多家公司参与建立的一种工业标准,获得了大多数厂商的支持是免费软件,不是工业标准,没有固定厂商的支持1.2企业应用开发架构在构建企业级应用的时候,通常需要大量的代码,而且这些代码一般分布在不同的计算机上,划分代码运行在不同计算机上的理论就是多层设计理论。企业级应用系统通常分成两层三层N层架构32两层架构传统的两层应用包括用户接口和后台程序,后台程序通常是一个数据库,用户接口直接同数据库进行对话。实现上,通常使用JSP、ASP或者VB等技术编写这类软件,结构如图两层应用架构显示逻辑层一般由HTML、JSP、ASP实现,通过JSP和ASP直接和数据库相连33用户显示逻辑层数据库层两层应用架构三层架构在两层应用中,应用程序直接同数据库进行对话。三层结构在用户接口代码和数据库中间加入了一个附加的逻辑层,通常这个层叫做“商务逻辑层”,如图34用户表示逻辑层数据库层三层应用架构商务逻辑层N层架构如果某个应用超过三个独立的代码层,那么这个应用叫做N应用,就不再叫四层或者五层等名称,而是统称为N层。如图35用户表示逻辑层数据库层N层应用架构商务逻辑层服务层开发架构比较两层架构的优点是开发过程比较简单,利用服务器端的程序直接访问数据库,部署起来比较方便。缺点是程序代码维护起来比较困难,程序执行的效率比较低,用户容量比较少。三层架构基本解决了两层架构的缺点,将显示部分和逻辑流程控制分开,利用服务器应用程序实现显示部分,利用商务逻辑层实现程序的流程控制,分层使维护变的方便一些,而且执行效率也会有所提高,但是相对部署起来就比较困难一些。根据实际的需要,会进一步细化每一层,或者添加一些层,就形成了N层架构,和三层架构一样,组件化的设计使维护相对容易,但是部署相对困难。361.3JSP概述JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。用JSP开发的Web应用是跨平台的。JSP的1.0规范的最后版本是1999年9月推出的,最新版本是2003年发布的JSP2.0。37什么是JSPJSP技术是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。以下是helloWorld.jsp的源代码38%@pagelanguage=javacontentType=text/html;charset=gbk%htmlheadtitleHelloWorld!/title/headbodybgcolor=#FFFFFFh3