毕业论文-大型的WEB应用程序开发

【摘要】
JAVA语言是目前Internet上大型的WEB应用程序开发时使用得最热门的编程语言,本文描述了JAVA和JSP技术的特点以及在互联网上的使用情况,介绍这两种技术的重要编程方法和两者之关的联系,并完成一个基于这种技术的网上书店系统。
【关键字】JAVA, JavaBeans, Servlet, JSP, 网络编程, 电子商务, 网上书店
Abstract
At present JAVA is the hottest programming language for WEB development, This text described the characteristics of JAVA and JSP technology and the state of operating on Internet, It introduced the relationship between them and the important programming method of the double technology, And work out an online bookstore system base on this kind of technology. 
Keywords: JAVA, JavaBeans, Servlet, JSP, web program, internet, bookshop 
目  录
1、JAVA的网络功能与编程
1-1  JAVA语言简介
1-2  JAVA语言在网络上的应用
1-3  JSP的基础——Servlet 技术
1-4  JavaBeans技术
2、JSP技术简介
2-1在Windows平台下配置JSP运行环境
2-2 JSP、ASP和PHP技术之比较
2-3 JSP语法基础
2-3-1嵌入了JAVA语言的HTML文件
2-3-2 request、out & response——与访问者的交互
2-3-3 session——保持访问者的会话状态
2-3-4 JSP其它基本内置对象
2-4 用JSP开发Web应用的几种主要方式
2-4-1 直接使用JSP
2-4-2 JSP + JavaBeans
2-4-3 JSP + JavaBeans + Servlet
2-5 JSP + JavaBeans实现的高级功能
2-5-1 用JSP访问数据库
2-5-2 用JSP + JavaBeans 实现文件上传
2-6 JSP的MVC开发模型
3、网上书店系统设计项目需求分析
3-1 网上书店系统的模型
3-2 网上书店系统数据库的建立
4、网上书店系统的开发
4-1 后台管理
4-1-1 管理员登录
4-1-2 图书类别管理
4-1-3 图书产品管理
4-1-4 注册会员管理
4-1-5 图书订购管理
4-2 网上书店界面
4-2-1 图书搜索
4-2-2 查看图书详细
4-3 网上购物程序
4-3-1 用户注册
4-3-2 购物篮的实现
5、总结
第一章 JAVA的网络功能与编程
1-1  JAVA语言简介
Java是一种简单易用、完全面向对象、具有平台无关性且安全可靠的主要面向Internet的开发工具。自从1995年正式问世以来,Java的快速发展已经让整个Web世界发生了翻天覆地的变化。在早期,Java比较多的用在浏览器上,插入到网页中(即是Java Applet程序),成为最灵活、最强大的网页多媒体的载体,但由于Java虚拟机相对于个人电脑而言,有占用资源大,安全性相对较差等缺点,Applet逐渐的被后起之秀Flash所替代,但随着Java Servlet的推出,Java在电子商务方面开始崭露头角,最新的JSP(Java Server Page)技术的推出,更是让Java成为基于Web的应用程序的首选开发工具,目前的Java技术已成为所有大型电子商务项目的必然选择。
1-2 JAVA语言在网络上的应用
Java程序可以获取网络上结点的图象、声音、HTML文档及文本等资源,并可以对获得的资源进行处理。例如Java程序可以每隔一定时间读取某结点提供的最新数据,并以图表的形式显示出来。在编程处理上,一般先生成一个URL类型的对象,然后用 Java中相应的方法(method)获取该对象所代表的资源。下面列举一个Java从网络上获取图象的的方法以说明。
Java Applet可以直接从网络上结点获取图象并显示出来,Java提供了如下方法可以创建对应于其他结点的图象:
getImage(new URL(字符串))
其使用格式可有两种:
String  url = “结点URL”;
Image image;
try {
              image = getImage(new URL(url));

catch(Exception e){
              System.out.println(“Can't open the URL “);
}

       URL imgur=null;
       Image image;
       try {
        imgur=new URL(“结点URL “);
       }
     catch (MalformedURLException e) {
        System.out.println(“Can't open the URL “);
     }
     image=getImage(imgur);
前一种格式用“new URL(url)”生成 URL 对象, 并直接作为getImage的参数,后一种格式先用“new URL(url)”生成一个 URL对象,再传给getImage,两种格式本质上是一样的,下面是一个完整的实例(img.java):
       import java.applet.*;
       import java.net.*;
       import java.awt.*;
       public class img extends Applet{
            Image image;
            public void init() {
                 String  url = “http://images.sohu.com/logo1.gif”;
                 try {
                        image = getImage(new URL(url));
                 }catch(Exception e){}
            }
            public void paint(Graphics g) {
                g.drawImage(image, 0, 0,this);
            }
       }
       将上程序以img.java存盘, 执行javac img.java,将得到编译后生成的img.class,最后创建调用这两个Java Applet的HTML文档,并放在与img.class相同的目录,对应的HTML文档可如下(img.html):
以上仅是Java在客户端应用的一些方面,目前,Java更广泛的应用是在服务器端,这是本文研究的主要话题,下文提及的Servlet、JSP等技术都是Java在服务器端应用的具体形式。
1-3 JSP的基础——Servlet 技术
Java Servlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用Java Servlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合Java Servlet规范,Servlet是完全平台无关且是Web服务器无关的。由于Java Servlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此Java Servlet效率非常高。但Java Servlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,Java Servlet是利用输出HTML语句来实现动态网页的,如果用Java Servlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。这就是为什么SUN还要推出Java Server Pages的原因。
1-4 JavaBeans技术
什么是JavaBeans?JavaBeans就是Java的可重用组件技术。ASP通过COM来扩充复杂的功能,如文件上载、发送email以及将业务处理或复杂计算分离出来成为独立可重复利用的模块。JSP通过JavaBeans实现了同样的功能扩充。JSP对于在Web应用中集成JavaBeans组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为JSP应用带来了更多的可伸缩性。JavaBeans组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。在实际的JSP开发过程中,读者将会发现,和传统的ASP或PHP页面相比,JSP页面将会是非常简洁的,由于JavaBeans开发起来简单,又可以利用Java语言的强大功能,许多动态页面处理过程实际上被封装到了JavaBeans中。
第二章JSP技术简介
2-1 在Windows平台下配置JSP运行环境
为了使系统能够正常运行JSP和相关程序,必须先配置好能够使用JSP的WEB服务器。各种能使用Servlet技术的WEB服务器中,运用得最多的是Tomcat服务器,如果仅是为了用于测试程序,Tomcat的配置则显得太复杂了,本文推荐使用Resin服务器,Resin据称是最快的Servlet运行平台,不过限于单站点,对传统的一些网关支持不是很好,因此对于商业网站而言,不是最好的选择,不过如果仅是为了测试Servlet,这个Resin的安装可谓有点傻瓜化。
Resin比较新的版本是3.x,但目前实际用的2.x版本的比较多,Resin可到官方站点下载:http://www.caucho.com/download/本文使用的是2.1.13版本,文件位置:http://www.caucho.com/download/resin-2.1.13.zip
如果你的电脑上已装好JDK,直接把下载的resin包解压到D:盘根目录解压后即D:\resin-2.1.13为服务器的目录,把本文的源程序jspweb文件夹也放在D:盘根目录,即是D:\jspweb为网站根目录,打开D:\resin-2.1.13\conf\ resin.conf(是一份XML形式的配置文件),找到doc这里改为D:\jspweb,然后运行D:\resin-2.1.13\bin\httpd.exe,在浏览器输入http://localhost:8080/j1.jsp,看到了“我是JSP!”的字样了吧,你的Servlet服务器就这样配置成功了,为了能编译Servlet类,还需要做的事情是:把D:\resin-2.1.13\lib加入到windows的CLASSPATH的环境变量中。
2-2 JSP、ASP和PHP技术之比较
JSP与ASP、PHP技术都是目前网上最流行的在服务器端运行的脚本技术,JSP能用JavaBeans技术封装,达到商业逻辑的目的,ASP对应之的是COM组件,因此两者都能用于开发商业逻辑,PHP则更像于一个纯脚本,仅适合于普通的网站开发,而不能用作商业逻辑而被冠以“Person Home Page”的名称,这是最贴切不过的了。
JSP与ASP相比,JSP具有跨平台、安全、强大的可伸缩性的特点,而果硬要挑一些毛病,JSP相对别的脚本更加难掌握,因为精通JSP必须精通Java语言,对于中小型项目,我们要考虑开发人员、开发速度、开发成本等问题,在这方面ASP和PHP会比JSP更容易胜出。
值得一提的是,ASP的最新版本ASP.NET与原来的ASP性质完全是不同的,它和JSP一样,都是一种编译性的脚本,本身完全与强大的Net框架结合,完美的支持Xml的各种应用,与昔日的ASP不可同日而语,但是无论是ASP还是ASP.NET,它都摆脱不了Windows平台本身,这是ASP一个致命的缺点。
2-3 JSP语法基础
2-3-1嵌入了JAVA语言的HTML文件
把下面网页保存为:j1.jsp
这就成了一个最简单的JSP页面了,其中
是声明输出的文件类型为text/html,字符编码是gb2312,在JSP中里的内容表示的是JSP编译时的一些选项或向客户端发送的头信息的JSP指令,里的内容就是Java语言,如果有必要,更改适当设定,还可以使用JavaScript作为脚本,不过实际应用中很少有人这样做。
2-3-2 request、out & response--与访问者的交互
接收客户端的请求和向客户端返回信息是动态网页最常做的事情,在JSP中,主要通过request、response、out 三大对象实现这些功能。
request 对象的作用是接收用户通过URL或通过表单向发服务器发送请求信息和与用户计算机相关的一些信息。
response 对象用于网页传回用户端的回应。
out 用于传送回应的输出,即向客户端返回信息。 
把上面的例子稍作修改:
保存为j2.jsp在浏览器上输入:“http://localhost:8080/j1.jps?msg=我是JSP”看一下效果,这和j1.jsp的结果一样吧?但它输出的是客户端返回的信息,这在意义上完全不同于前者。
2-3-3 session--保持访问者的会话状态
会话状态维持是 Web 应用开发者必须面对的问题。有多种方法可以用来解决这个问题,如使用 Cookies 、隐藏的表单输入域,或直接将状态信息附加到 URL 中。Java Servlet 提供了一个在多个请求之间持续有效的会话对象,该对象允许用户存储和提取会话状态信息,JSP也内置了这个对象。
Session最基本的用法是:
创建一个会话 session.putValue("名称","值");
获得一个会话的值session.getValue("名称");
2-3-4 JSP其它基本内置对象
       JSP有九大内置对象,除了上述四种以外,还包括:
       pageContext 网页的属性是在这里管理 
application Servlet正在执行的内容  
config Servlet的构架部件 
page JSP网页本身 
exception 针对错误网页,未捕捉的例外
这些基本的内置对象是构成JSP页面的重要因子。
2-4 用JSP开发Web应用的几种主要方式
本文是收费论文,字数大于8000,含源码,价格为:300元,请联系 QQ:2500875 索取全文 。
总结
本文讲述了Java/JSP在WEB应用的一些基本知识,并通过网上书店的程序对JSP的运用进行了深化,从本文中可看出JSP与JavaBeans结合的模式,在电子商务上应用十分灵活,不过要真正掌握好它们却并不是一件容易的事情,在实际应用的WEB开发中,还有很多关于安全方面的问题需要考虑,此外电子商务网站中使用网上支付平台的接口一般是用xml server形式通信,本文则尚未涉略这些方面。
附件:jspweb.zip,包含了本文中提及的所有源程序以及网上书店系统。
参考资料:
(1)JSP编程技巧/清宏计算机工作室编著. 北京:机械工业出版社,2001.1
(2)精通JBuilder 3环境下的JAVA编程/锐思创作室编著. 北京:人民邮电出版社., 2001.1
(3)深入JAVA Servlet 网络编程. 清华大学出版社

(0)

相关推荐

  • 毕业论文-大型的WEB应用程序开发

    [摘要] JAVA语言是目前Internet上大型的WEB应用程序开发时使用得最热门的编程语言,本文描述了JAVA和JSP技术的特点以及在互联网上的使用情况,介绍这两种技术的重要编程方法和两者之关的联系,并完成一个基于这种技术的网上书店系统. [关键字]JAVA, JavaBeans, Servlet, JSP, 网络编程, 电子商务, 网上书店 Abstract At present JAVA is the hottest programming language for WEB develo

  • 使用AJAX进行WEB应用程序开发的方法

    一.简介 AJAX,一个异步JavaScript和XML的缩略词,是最近出来的技术词语.异步意味着你可以经由超文本传输协议(HTTP)向一个服务器发出请求并且在等待该响应时继续处理另外的数据.这就意味着,例如,你可以调用一个服务器端脚本来从一个数据库中以XML方式检索数据,把数据发送到存储在一个数据库的服务器脚本,或者简单地装载一个XML文件以填充你的Web站点而不需刷新该页面.然而,在这项新技术提供巨大能力的同时,它也引起了在"Back"按钮问题上的很多争论.本文将帮助你确定在真实世

  • 使用Python的Flask框架构建大型Web应用程序的结构示例

    虽然小型web应用程序用单个脚本可以很方便,但这种方法却不能很好地扩展.随着应用变得复杂,在单个大的源文件中处理会变得问题重重. 与大多数其他web框架不同,Flask对大型项目没有特定的组织方式:应用程序的结构完全交给开发人员自己决定.在这一章,提出一个可能的方式来组织管理一个大型应用程序的包和模块.这种结构将用于书中其余的示例中. 1.项目结构 示例 基本多文件Flask应用结构 |-flasky |-app/ |-templates/ |-static/ |-main/ |-__init_

  • 如何使用ajax开发web应用程序第1/2页

    作者: Jonathan Fenocchi时间:2005.10.25译者:Sheneyan英文原文:http://webreference.com/programming/javascript/jf/column12/index.html 在过去,由于为了获得新数据而不得不重新加载web页面(或者加载其他页面)导致web应用程序发展被限制.虽然有其他方法可用(不加载其他页面),但是这些技术都没有被很好地支持而且有bug成灾的趋向.在过去的几个月里,一个过去并不被广泛支持的技术已经被越来越多的we

  • 如何开发一个渐进式Web应用程序PWA

    概述 自苹果推出了iPhone应用商店以来,App成为了我们生活中不可或缺的一部分,而对于实体业务也是如此,现在各行业都在推出自己的App,但有没有人想过这样一种场景,如果自己的潜在客户还没有安装你的App亦或是即便安装但因为客户的手机存储空间紧张而卸载掉了你的App?那有没有使App更轻量,更易安装的技术实现呢?答案是"有的". 渐进式Web应用程序就是为此而生的,它同时具备了Web应用功能和以前只有在原生应用才有的功能的特点,渐进式Web应用程序通过从主屏幕上的图标启动,也可以根据

  • 使用springboot开发的第一个web入门程序的实现

    1.新建一个springboot初始化项目 2.输入自己的包名,项目名及jdk版本,再点击Next 3.勾选Spring Web,再点击Next 4.再点击Next,再Finish 默认的项目结构如下图 (1)修改pom.xml文件 完整的pom.xml为: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0&qu

  • 气象 XML 数据源应用程序开发指南-简介

    2.简介 2.1. 关于气象 XML 数据源 气象 XML 数据源(服务)允许第三方应用程序通过 weather.com® 站点请求一个 XML feed 访问一个可用的数据子集.Weather Channel Interactive 公司 (TWCi) 提供这个用于开发的免费的数据,谁要将气象数据应用到一个单一的应用程序那么希望可以和 weather.com 交换链接.这个文档描述了怎样使用气象数据并且从技术上详述请求和使用这个 XML 数据.气象数据包含:- 通过城市/州和邮政编码搜索区域-

  • 微信 小程序开发环境搭建详细介绍

    微信小程序可谓是今天最火的一个名词了,一经出现真是轰炸了整个开发人员,当然很多App开发人员有了一个担心,微信小程序的到来会不会给移动端App带来一个寒冬,身为一个Android开发者我是不相信的,即使有,那也是很遥远的未来. 不管微信小程序是否能颠覆当今的开发格局,我们都要以好奇的心态去接收,去学习.不排斥新技术,所以,心动不如行动,赶紧先搭建一个微信小程序开发工具.那么接下来就让我们一起来开始吧. 先放一张Github上demo的动态图 开发工具下载是看到GitHub上的分享.那么你可以直接

  • 巧用ASP.NET预编译Web应用程序规避调用延迟的方法

    自从ASP.NET面市以来,开发人员一直都在要求(微软)出台一个解决办法,而ASP.NET 2.0利用预编译提供了一个有效的解决方案. 预编译选项 在首次启动应用程序的时候,ASP.NET会动态地分析和编译所有的ASP.NET文件(aspx页面).运行环境要对编译的结果进行缓冲,以便更好地服务未来所有的请求. 在服务器重启或者Web服务器重启之后,第一次启动应用程序也意味着这一过程要重新开始.而且,对应用程序任何文件的改变都会被系统检测到,而在文件发生改变之后首次运行应用程序也会让这一过程再次发

  • 微信小程序开发之入门实例教程篇

    前言 近日,在工作闲暇之余,阅读了一些关于微信小程序的文章,忍不住,想动手试他一试.本文就以"我的第一个微信小程序"为例,简单的介绍下,微信小程序的入门级用法. 一.注册小程序账号 1.进入微信公众平台(https://mp.weixin.qq.com/),注册小程序账号,根据提示填写对应的信息即可. 2.注册成功后进入首页,在 小程序发布流程->小程序开发与管理->配置服务器中,点击"开发者设置". 3.会获得一个AppID,记录AppID,后面创建项

随机推荐