JSP动态网页制作
- 格式:doc
- 大小:71.00 KB
- 文档页数:16
动态网页(JSP+Servlet)目录第一章J2EE简介 (7)1.1简介 (7)1.2J2EE体系架构 (7)1.2.1 层技术:从C/S到B/S到J2EE (7)1.2.2 四层分布式架构 (10)1.3J2EE的优越性 (11)1.4总结 (13)第二章TOMCAT 简介 (14)2.1T OMCAT目录结构 (15)2.2T OMCAT下载,安装以及在E CLIPSE中的配置 (16)2.3T OMCAT S ERVER.XML 配置 (18)2.4T OMCAT应用的部署 (20)2.5总结 (20)第三章SERVLET简介 (21)3.1简介 (22)3.2HTTP基础知识 (23)3.2.1 HTTP请求、响应和头信息 (23)3.2.2 GET和POST方法区别 (24)3.3S ERVLET简介和优点 (25)3.4第一个S ERVLET例程 (26)3.5S ERVLET的体系结构 (28)3.5.1 Servlet应用程序体系结构 (28)3.5.2 Servlet层次结构 (29)3.6S ERVLET的生命周期 (35)3.7总结 (43)第四章JSP简介 (44)4.1简介 (45)4.2JSP的概念 (45)4.3JSP页面构成 (46)4.3.1 注释 (48)4.3.2 静态内容 (49)4.3.3 JSP指令 (49)4.3.4 表达式 (50)4.3.5 代码片段 (50)4.3.6 声明 (50)4.3.7 动作 (50)4.5JSP的优点 (53)4.5.1 内容生成与表示相分离 (53)4.5.2 强调可重用组件 (54)4.5.3 简化页面开发 (54)4.6总结 (55)第五章JSP语法之脚本元素和指令 (56)5.1简介 (57)5.2JSP脚本元素 (57)5.2.1 表达式 (57)5.2.2 代码片段 (58)5.2.3 声明 (60)5.3JSP指令 (62)5.3.1 page指令 (63)5.3.2 include指令 (65)5.3.3 taglib指令 (66)5.4转义 (67)5.5错误处理 (69)5.5.1 转译时错误 (70)5.5.2 请求时错误 (70)5.6总结 (74)第六章JSP语法之隐式对象 (75)6.1简介 (76)6.2与输入输出有关的隐式对象 (76)6.2.1 request对象 (76)6.2.2 response对象 (77)6.2.3 out对象 (80)6.3与S ERVLET有关的隐式对象 (81)6.3.1 page对象 (81)6.3.2 config对象 (82)6.4与错误有关的隐式对象 (83)6.5与作用域通信有关的隐式对象 (84)6.5.1 session对象 (84)6.5.2 application对象 (88)6.5.3 pageContext对象 (90)6.6属性和范围 (92)6.6.1 Page范围 (94)6.6.2 Request范围 (96)6.6.3 Session范围 (100)6.7总结 (104)第七章JSP语法之标准动作和JAVABEAN (105)7.1简介 (106)7.2JSP标准动作及其分类 (106)7.2.1 <jsp:param> (107)7.2.2 <jsp:include> (107)7.2.3 <jsp:forward> (109)7.3什么是J AVA B EAN (111)7.3.1 <jsp:useBean> (117)7.3.2 <jsp:getProperty> (120)7.3.3 <jsp:setProperty> (120)7.4总结 (126)第八章EL表达式语言 (127)8.1简介 (128)8.1.1 静态文本 (128)8.1.2 标签和自定义标签属性 (130)8.1.3 JavaBean中使用EL表达式 (130)8.2变量的获得 (132)8.3EL运算符 (132)8.4禁用EL表达式 (133)8.5总结 (134)第九章WEB应用乱码问题 (135)9.1简介 (136)9.2常见的中文编码问题及其解决方案 (136)9.3页面显示非英文乱码问题举例 (137)9.4页面间传递非英文参数乱码问题举例 (141)9.5数据库操作中非英文乱码问题举例 (146)9.6总结 (147)第十章XML及DOM4J简介 (148)10.1简介 (149)10.1.1 XML简介 (149)10.1.2 DOM4J (150)10.2DOM4J的接口 (150)10.3下载与安装 (151)10.4程序示例 (152)10.4.1 读取并解析XML文档 (152)10.4.3 遍历XML树 (152)10.4.4 字符串与XML的转换 (153)10.4.5 创建XML (153)10.4.6 文件输出 (154)10.5用D OM4J解析XML及中文问题 (154)10.5.1 建立一个XML文档 (154)10.5.2 修改XML文档 (156)10.5.3 格式化输出和指定编码 (159)10.6总结 (160)第十一章AJAX (161)11.1简介 (162)11.2基本原理和技术 (162)11.2.1 AJAX 使用Http 请求 (162)11.2.2 第一个AJAX应用程序 (163)11.2.3 更多有关XMLHttpRequest 对象的知识 (165)11.2.4 向服务器发送一个请求 (166)11.2.5 服务器端的脚本 (167)11.3高级应用 (168)11.3.1 表单提示 (168)11.4总结 (172)第十二章LOG4J (173)12.1背景 (174)12.2定义配置文件 (174)12.3格式化日志信息 (175)12.4配置LOG4J的步骤 (176)12.4.1 步骤描述 (176)12.4.2 在Eclipse中配置Log4J演示 (177)12.5总结 (188)第十三章使用SVN进行版本控制 (189)13.1简介 (190)13.2SVN实践 (191)13.2.1 Check out (191)13.2.2 Update (192)13.2.3 Commit (193)13.3总结 (196)第十四章MVC设计模式 (197)14.2J2EE架构下的MVC模式 (198)14.3为什么使用MVC (199)14.4总结 (200)第一章J2EE简介1.1 简介J2EE是一种利用Java2平台来简化企业解决方案的开发、部署和管理相关的复杂问题的体系结构。
实验2:运用JSP编写动态网页一.选题问题1)编写一个购物车,实现向购物车里添加商品、移除指定商品和清空购物车的功能2)延续实验一二.程序设计1.功能1)购物车:可以实现向购物车里添加指定商品,移除指定商品,清空购物车的基本功能,另外还可以实现简单的结算功能。
2)实验一延续:实现登录、以及同一用户不能重复登录的功能2.技术1)必用技术:JSP内置对象:Request,Response2)选用技术:JSP、JavaScript:Session,application三.数据设计1.含义1)购物车:1>goods.html:用来显示商品清单,选择购买数量,以及添加到购物车2>cart.jsp:用来查看添加到购物车的商品,实现商品的删除,以及返回购物页面继续添加或者跳转到结算页面支付。
使用了request获得信息,session创建表单,调用了自创建的hzsb类。
3>hzsb.jsp:定义了一个“汉子识别”的类,该类可以把从页面中获取的汉子自动转换成单字节编码,并在显示时再转换回来。
4>cost.jsp:结算页面。
负责将购物车里所有的商品及数量显示出来并且进行统计,得到总计钱数。
使用了request获得信息,session创建表单,调用hzsb类。
2)实验一添加功能1>web.html:显示实验一中的页面,其中“登录”超链接到index.jsp;“注册”超链接到count.jsp。
2>index.jsp:登录页面。
用于用户名和密码的输入,输入完成后点击“确定”,可以跳转到rsInfo.jsp页面查看所输入的信息是否保存。
3>rsInfo.jsp:查看页面。
该页面用于显示所输入的信息。
另外该页面调用了response对象,用于显示当前的时间,并用于页面的刷新。
4>count.jsp:“同一用户只能登录一次页面”,即用户一旦登录就不能够通过反复刷新页面造成“多次登录”的假象。
JSP动态⽹页开发技术概述 在动态web项⽬的开发中,经常需要动态⽣成HTML内容(如系统中的当前在线⼈数需要动态⽣成)。
如果使⽤Servlet实现HTML页⾯数据的统计,则需要使⽤⼤量的输出语句。
同时,如果静态内容和动态内容混合在⼀起,那么也将导致程序⾮常臃肿。
为了客服Servlet的这些缺点,Oracle(Sun)公司推出了JSP技术。
1.JSP概述 JSP(Java Server Pages)是建⽴在Servlet规范之上的动态⽹页开发技术,其实质是⼀个简化的Servlet。
在JSP⽂件中,HTML和Java代码共同存在,其中,HTML代码⽤于实现⽹页中静态内容的显⽰,Java代码⽤于实现⽹页中动态内容的实现。
为了和传统的HTML有所区别,JSP⽂件扩展名为jap。
JSP技术所开发的Web应⽤程序是基于Java的,其具有以下特征: (1)预编译 预编译指在⽤户第⼀次通过浏览器访问JSP页⾯时,服务器将对JSP页⾯代码进⾏编译,并且仅指向⼀次编译。
编译好的代码将被保存,在⽤户下⼀次访问时会直接执⾏编译好的代码。
这样不仅节约了服务器的CPU资源,还⼤幅度提升了客户端的访问速度。
(2)业务代码相分离 在使⽤JSP技术开发Web应⽤时,可以将界⾯的开发和应⽤程序的开发分离。
(3)组件重⽤ JSP可以使⽤JavaBean编写业务组件,也就是使⽤⼀个JavaBean类封装业务处理代码或者将其作为⼀个数据存储模型,在JSP页⾯甚⾄整个项⽬中,都可以重复使⽤这个JavaBean,同时,JavaBean也可以应⽤带其他Java应⽤程序中。
(4)跨平台 由于JSP是基于Java语⾔的,它可以使⽤Java API,所有它也是跨平台的,可以应⽤与不同的系统,如Windows和Linux。
JSP 运⾏原理 JSP的⼯作模式是请求/响应模式,客户端⾸先发出HTTP请求,JSP程序收到请求后将进⾏处理并返回处理结果。
JSP在动态网页制作技术中的应用摘要:随着internet和电子商务的普遍应用,陆续诞生了很多动态网页制作技术。
jsp是目前比较热门的一种动态网页制作技术,它依靠java语言的稳定、安全、可移植性好等优点,成为大、中型网站开发的首选工具。
文本主要介绍jsp的主要功能和开发模式以及相关应用。
关键词:jsp;动态网页;网页制作中图分类号:tp393 文献标识码:a 文章编号:1007-9599 (2012)23-0000-02jsp(javaserverpage)是有sun公司在java语言基础上开发出来的一种动态网页制作技术,建立在servlet之上,是java开发阵营中最具代表性的解决方案。
自jsp发布以来,在一些主流的动态网页技术中一直受到了密切的关注。
应用jsp,程序员和非程序员都可以高效率地创建web应用,并使得开发的web应用具有安全性高、跨平台等优点。
1 jsp技术的发展1.1 java语言。
java语言是有sun公司于1995年推出的编程语言,一经推出,就赢得业界的一致好评。
java语言适用于internet 环境,目前已经成为internet应用的主要语言之一。
它具有简、面向对象、可移植性、分布性、解释器通用性、稳健、多线程、安全和高性能等优点,其中最重要的就是实现了跨平台运行,使得java开发的程序可以方便地移植到不同的操作系统中运行。
1.2 servlet技术。
servlet是在jsp之前就存在的运行在服务器端的一种java技术,它是用java语言编写的服务器端程序,java 语言能够实现的功能,servlet基本上都可以实现。
servlet主要用于处理http请求,并将处理的结果传递给浏览器生成动态web页面。
servlet具有可移植在多种系统平台和服务器平台下运行的功能。
在jsp中用到的servlet通常都继承自javax.servlet.http.httpservlet类,在该类中实现了用来处理http请求的大部分功能。
长春理工大学光电信息学院《JSP动态网页制作》实验指导书孙颖馨编写信息工程分院计算机实验中心目录实验一.................................................................... .. (3)实验二 (4)实验三 (5)实验四 (6)实验五 (7)实验六 (8)实验七 (9)实验八 (11)实验九 (13)实验十 (14)实验十一 (16)实验十二 (17)实验十三 (18)1.实验目的了解和掌握安装和配置JSP的运行环境和开发环境所需的部分软件的方法。
2.实验内容掌握安装JDK、安装和配置Tomcat以及安装和配置Eclipse 开发工具。
3.实验步骤下面以安装Eclipse 为例,进行练习。
(1)从Eclipse 官方网站( )中搜索Eclipse SDK3.1。
(2)在相应的网页上单击下载,将Eclipse-SDK-3.1-win32.zip下载到安装目录,如E:\。
(3)打开【我的电脑】,找到E驱动器下的Eclipse-SDK- 3.1-win32.zip文件。
(4)右键单击Eclipse-SDK-3.1-win32.zip文件,(假设已经安装WinRAR 中文版)在弹出的快捷菜单中选择【解压到当前文件夹】命令。
(5)打开解压缩后的Eclipse文件夹,双击Eclipse.exe文件启动Eclipse。
(6)在【Workspace Launcher】对话框中指定工作空间位置,单击【OK】按钮即可运行Eclipse。
1.实验目的练习如何使用Eclipse创建Tomcat项目以进行JSP页面编程。
2.实验内容重点掌握如何在Eclipse中创建Tomcat项目,学习并熟悉JSP 的各种语法等内容。
3.实验步骤下面以3.6 节的JSP 页面为例进行练习。
(1)使用资源管理器打开Eclipse 所在的文件夹,双击Eclipse.exe文件,打开Eclipse窗口。
《JSP实训指导书》目录实验1:JSP运行环境及JSP程序运行初步实验2:JSP页面的基本结构——求圆面积周长实验3:判断三角形实验4:JSP内置对象实验5:熟悉Jsp的五种内置对象的功能及其使用实验6:文件复制功能的实现实验7:文件上传实验8:JSP中使用数据库实验9:数据库的更新实验10:JavaBean的使用实训二、JSP页面的基本结构——求圆面积周长一、实训目的1.熟悉HTML标记的使用2.掌握JSP标签的使用3.掌握变量和方法的声明4.理解并掌握Java程序段的实现方法5.掌握Java表达式的使用方法二、实训内容编写一个JSP程序求圆面积周长。
三、参考程序参考源代码:说明:该项目有2个页面组成,一个是输入并提交半径的页面index.jsp,另一个是后台处理页面,负责获取从提交页面提交来的半径,并输出圆的面积和周长index.jsp:<%@ page language="java" import="java.util.*" pageEncoding="GBK"%><%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>My JSP 'index.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"><meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><body><form method="post" action="ActionForm.jsp" name="form"><p> 半径:<input type="text" value="0" name="Radius"></p><p> <input type="submit" value="提交" name="button1"> </p><p> </p><p> </p><p> </p><p> </p></form></body></html><%@ page contentType="text/html;charset=GB2312" %>ActionForm :<%@ page language="java" import="java.util.*" pageEncoding="GBK"%> <%String path = request.getContextPath();String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><base href="<%=basePath%>"><title>My JSP 'ActionForm.jsp' starting page</title><meta http-equiv="pragma" content="no-cache"><meta http-equiv="cache-control" content="no-cache"><meta http-equiv="expires" content="0"><meta http-equiv="keywords" content="keyword1,keyword2,keyword3"> <meta http-equiv="description" content="This is my page"><!--<link rel="stylesheet" type="text/css" href="styles.css">--></head><%!//定义一个圆类class Circle {private double radius;Circle(double r) {this.radius = r;}double求面积() {return Math.PI * radius * radius;}double求周长() {return Math.PI * radius * 2;}}%><%//从表单获取半径,其值为字符串String s = request.getParameter("Radius");double r;//将半径由字符串转换为double值if (s != null) {r = Double.parseDouble(s);} elser = 1;Circle c = new Circle(r);%><body><!-- 输出圆的面积和周长 --><p>圆的面积是:<%=c.求面积()%><p>圆的周长是:<%=c.求周长()%></body></html>实训三判断三角形一、实训目的1、理解HTML标记2、掌握JSP标签,变量和方法的声明二、实训内容判断所给三边能否构成一个三角形三、参考程序编程如下:<%@ page contentType="text/html;charset=GB2312" %><HTML><BODY ><P>请输入三角形的三个边a,b,c的长度:<BR><!--以下是HTML表单,向服务器发送三角形的三个边的长度--><FORM action="Example2_8.jsp" method=post name=form> <P>请输入三角形边a的长度:<INPUT type="text" name="a"><BR><P>请输入三角形边b的长度:<INPUT type="text" name="b"><BR><P>请输入三角形边c的长度:<INPUT type="text" name="c"><BR><INPUT TYPE="submit" value="送出" name=submit></FORM><%--获取客户提交的数据--%><%String string_a=request.getParameter("a"),string_b=request.getParameter("b"),string_c=request.getParameter("c");double a=0,b=0,c=0;%><%--判断字符串是否是空对象,如果是空对象就初始化--%><%if (string_a==null){string_a="0";string_b="0";string_c="0";}%><%--求出边长,并计算面积--%><%try{a=Double.valueOf(string_a).doubleValue();b=Double.valueOf(string_b).doubleValue();c=Double.valueOf(string_c).doubleValue();if(a+b>c&&a+c>b&&b+c>a){double p=(a+b+c)/2.0;double mainji=Math.sqrt(p*(p-a)*(p-b)*(p-c));out.print("<BR>"+"三角形面积:"+mainji);}else{out.print("<BR>"+"您输入的三边不能构成一个三角形");}}catch(NumberFormatException e){out.print("<BR>"+"请输入数字字符:");}%></BODY></HTML>实训四JSP内置对象一、实训目的1.了解JSP中9个内置对象request、reponse、out、session、application、config、pagecontext、page、exception的基本概念。
JSP动态网页制作技术
JavaServer Pages (JSP) 是一种结合了跨平台与跨网站服务器机制,以 Java为主的技术来产生动态网页。
JSP与微软的ASP(Active Server Pages )相容,但它是使用类似HTML的标签以及Java代码片段而不是VBScript。
当你所使用的网站服务器没有提供本地ASP支援,也确实是Apache或Netscape服务器时,你能够考虑使用JSP。
尽管你能够取得这些服务器的ASP附加配备程序,但价格相当昂贵,而目前Sun并没有对你所要的JSP组件收取费用(尽管Sun以后有可能会收费)。
对於Solaris与Linux以及Windows,这些组件也都专门容易取得。
请不要将JSP与服务器端的JavaScript混为一谈。
网站服务器会自动将以JSP写成的Java代码片段转换成Java servlets。
而许多先前必须以Perl手写程式或服务器特定的API(如ASP)操纵的功能也都可透过JSP来自动化处理。
现在就让我们开始动手关心你建立一个可执行JSP范例网站。
一、如何安装好你的机器来使用JSP
你将需要Java 2软件开发工具(JSDK),它原来的名称是Java开发工具
(JDK)以及JavaServer网站开发工具(JSWDK),Tomcat,或是其他支援JSP的网络服务器。
Sun免费提供JSDK与JSWDK来供Windows,Solaris,以及Linux平台使用。
假如你想要在你目前的网络服务器上使用JSP,但服务器本身并不支援JSP与Java servlets,你能够试试看Allaire的Jrun,它的作用就像是针对Netscape企业版与FastTrack服务器、微软的网络资讯服务器(IIS)与个人网络服务器(PWS)、Apache、以及其他服务器的网络服务器附加设备。
你也能够使用Apache网络服务器的Java版本,最新的JSWDK里有提供。
1、下载与安装你需要的组件
目前发表的1.2.2-001,JSDK可下载的版本是以可安装的压缩文档形式。
下载的文件大约是20MB,可提供完整的Java进展环境,让你能建立利用标准API为核心的Java解决之道。
然而,你的网络服务器需要应用到JSP的唯一一件事是Java编译器。
要让网络服务器明白编译器的位置,将环境参数JAVA.HOME设到JSDK的安装目录。
假如你是在Windows上安装同时同意预设目录,将这行代码set
JAVA.HOME=C:\1.2.2加到你的autoexec.bat文件同时重新开机。
在安
装好JSDK之後,下载同时安装JSWDK或beta版的Tomcat,以Java为主的Apache网络服务器。
安装在哪里并不重要,重要的是你能够找到它。
一般而言,它会放在上层目录,这种方式能够让你取代JSWDK或JSDK的网络服务器,不需要移动其他的网络服务器。
在你安装好那个文件之後,你就能够预备使用JSP了。
在你正确的安装JSWDK之後,执行startserver指令来启动网络服务器,预设通讯口为8080。
要看你在启动服务器之後是否有正确的安装工具,你能够载入范例JSP文件中的任何一个
(http://localhost:8080/examples/jsp/)。
假如你能够成功的执行一个范例文件,你能够明白你差不多正确的设定好软件了。
假如你在启动服务器的操纵台视窗看到错误讯息,那麽你需要解决那个问题。
最常发生的问题是没有设定(或者不正确设定)环境参数JAVA.HOME。
要检查目前的环境设定,在DOS模式下键入set。
2、开始解释JSP语法之前,先建立一个显示目前日期与时刻的快速网页同时将它储存成sample.jsp:
<html>
<head>
<title>First Page</title>
</head>
<body>
<H3>Today is:
<%= new java.util.Date() %>
</H3>
</body>
</html>.
将那个文件与你所有的HTML与JSP网页放在你JSWDK安装目录下的网页目录里. 你能够在http://localhost:8080/sample.jsp下载此页.当你第一次参观那个网页时,网站服务器会将JSP翻译成Java servlet 代码,那你就会看到目前的日期与时刻.
现在你差不多下载,安装,同时架构好环境,你差不多预备好要了解
JSP语法与建立你自己的JSP为主的解决之道.
二、JSP语法的差不多原理
安装之後,接下来我们要讨论JSP的语法.假如要偷懒,你能够下载语法卡,假如你不熟悉 Java的程序设计,你可能会想要参考Sun的使用手册;然而,网站建立者不应该做太多的Java使用程序,除了几个函数式之外,出现在你JSP网页上的Java程序码应该将它减到最少。
记住这点之後,现在让我们先来看看JSP的编译器指引与指令元件,之後我们将解释JavaBeans与内部物件. JSP编译器指引与指令元件有五种型态.JSP 1.0之後,大部分的JSP是包含在以<% 作为开始%>作为结束的单一标签里,新的 JSP 1.1规格差不多发表了,它同时也与XML 相容。
1、JSP的编译器指引与指令元件
编译器指引 <%@ 编译器指引 %>
预定义 <%! 预定义 %>
运算式 <%= 运算式 %>
程序码片段/小型指令 <% 程序码片段 %>
注解 <%-- 注解 --%>。