《基于jsp的电科院校园二手交易平台毕业设计(论文).doc》由会员分享,可在线阅读,更多相关《基于jsp的电科院校园二手交易平台毕业设计(论文).doc(34页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、北京电子科技职业学院电信工程学院毕业论文 毕业设计(论文) 设计(论文)题目 电科院校园二手交易平台 学 院 电信工程学院 教 学 系 计算机技术系 班 级 11网络技术 31电科院校园二手交易平台摘 要随着网络技术和信息科技的应用与发展,人类社会信息交流方式突破了时间和空间的限制,网络的盛行带动了虚拟世界的风潮,在线购物的风潮逐渐成为Internet的另一个主流服务。而它最大的特点是大家不需要再面对面、看实实在在的物品、靠纸介质单据(包括现金)进行买卖交易。仅仅是滑动手中的鼠标,通过阅读完整的物品信息、完善的物流配送系统和方便安全的资金结算系统进行交易。所以,在线的购物是一个经济、实用、安全
2、、高效、稳定的新型购物方式。而本设计尝试用JSP语言搭建一个类似于在线购物网站的系统校园二手交易平台,首先介绍了平台系统的设计背景和现状,然后论述了平台系统的设计目标,平台系统需求和总体设计方案,较详细的论述了系统的详细设计和实现。最后,本文对平台系统进行了系统检测并提出了还需要改进的问题。在开发中选择了JSP + JavaBean + SQL Server2008的模式,实现了应用程序逻辑和页面显示分离,界面设计更简单。JavaBean可重用的软件组件满足小型应用,同时使编程人员投入量精力便可重用组件,在简单的应用中可以充分考虑。关键字:二手交易平台系统 (Second-hand Trans
3、actions System) JSP(Java Server Pages) JavaBean SQL Server 2008目 录1 绪论11.1课题的背景及来源11.2 课题分析12 平台设计与分析32.1 运行环境32.2 需求分析32.3 总体设计42.4 平台体系结构分析62.5 技术方案选取83 平台实现主要技术113.1 相关技术介绍113.1.1 JSP技术简介113.1.2服务器Tomcat技术简介123.1.3 JavaBean组件技术简介123.1.4 JavaBean技术简介133.3JSP中CSS样式的应用144 平台结构设计154.1 Struts的体系结构154.
4、2 基于Struts框架的电科院二手交易平台的应用分析164.2.1 业务流程分析174.3平台数据库设计175 平台程序主要功能实现195.1 系统首页实现195.2 用户登录功能实现和注册功能实现205.3 商品信息介绍实现235.4 物品浏览功能实现246 平台的测试及问题256.1 引言256.2 测试方法256.3 部分测试用例256.3.1 网站启动测试256.3.2 测试用户注册模块266.4 测试时遇到的问题及未完成页面27总结28谢辞29参考资料301 绪论1.1课题的背景及来源人类的需要是多元化的。按马斯洛对人类需要的分层,现实世界已解决了最基本生理需要,包括避免饥饿,逃避
5、危险等,在网上虚拟的空间他们所追求,将是较高层次的多元化需求。而我们提供了这样一个将生理需求和虚拟空间结合起来的平台满足校园内学生的需求。“学生年年有”,学校是一个永远不会缺少人的地方,作为大学校园的学生,又拥有可以独立支配的钱财,且对商品的需求十分大。而且在当前的校园中,网上购物已经成为一种时尚,这也就造成学生盲目购物造成好多不必要的物品闲置在手中。而我们不妨将学生手中的闲置物品放在一个属于我们学生自己校园内部的平台上,让学生用更少的钱买到自己想要的物品。同时,让校园内的同学们交流起来。该平台使用JSP(Java语言)和SQL Server2008数据库开发, 实现了互联网校园二手物品信息平
6、台的动态管理,使得校园二手物品信息的管理更加及时、高效,提高了工作效率。该平台具有一般网上购物系统的功能,从大的方面来讲主要包括前台信息浏览和后台管理模块两个大的功能模块。该平台是基于B/S(Browser/Server,浏览器/客户端)模式实现,基于Myeclipse平台架构开发设计,它易维护,产品多样,跨平台可重用,都提高了应用程序的开发效率,并且在校园内服务器搭建JSP网站,可以适应学生们各类浏览器的需求,更加易于访问。同时使用SQL Server 2008 R2数据库储存数据,使得数据更加安全,对每一位同学的隐私保护的更加周到。1.2 课题分析随着互联网宽带和技术应用的成熟,以及学生对
7、互联网上的需求,我们的网站提供了一种更加便捷、更加成熟的方式为在校学生提供二手物品交换、打折产品等等的信息与平台。纵观国内互联网电子商务,淘宝网和当当两大门户网站的商城成为b2c电子商务的主要集散地,这些网站凭借着自身资源的优势,飞速发展,占据了网上零售业的大部分份额此外,国内仍然还有1000多家小型b2c电子商务网站,受规模和能力限制,发展缓慢,步履维艰,艰难的维持现状,并残酷地争夺着剩下为数不多的份额。而“电科院校园二手交易平台”出现带来了购物网站的新气象。首先,我们网站的面向的市场范围小,只针对在校学生,也许只是上下楼的学长;也许是隔壁宿舍的同学。我们利用这样小范围的物理环境,实行面对面
8、的物品交易,看得到,摸得着。保证了买家的利益和卖家的信誉。其次,我们拥有丰富的货源,为买家学生提供品种繁多,物美价廉的产品,任何一个购物网站都是借助其他商家的力量作为自己网站经营的根本。但“电科院二手交易平台”有实实在在的卖家群体,利用自身的平台优势,吸引广大有闲置物品的学生将他们闲置物品放入网站进行网上销售。而且物品具有多元化的特点。最后,“电科院校园二手交易平台”不仅仅提供的是一个购物的平台,更是一个校园内部交流、学习、信息采集的平台。2 平台设计与分析2.1 运行环境操作系统:Windows 7操作系统数据库:Microsoft SQL Server 2008网络通信协议:TCP/IP支
9、持软件:Tomcat,MyEclipse2.2 需求分析“电科院校园二手交易平台”无论是在应用的深度还是广度都是一个逐步发展的过程。在开发一个局部系统时要充分考虑到局部系统和整个目标系统之间的相容性和完整性,以利于今后整个系统的建立。进货订单管理系统从总体上把握系统的设计,在具体的设计实现上我们围绕着三个方面的需求展开,即管理者、系统使用者、系统维护者。(1) 性能需求分析该平台在性能功能上应达到如下需求: 操作简单、界面友好: 完全控件式的页面布局,使得二手物品,资讯等信息的录入工作更简便,许多选项包括二手物品种类,活动等等只需要点击鼠标就可以完成;另外,跟踪出现的提示信息也让用户随时清楚自
10、己的操作情况。对常见的类似网站的管理的各个方面:基本信息录入、浏览、删除、修改、搜索等方面都大体实现; 即时可见:对下单的二手物品的处理(包括录入、删除)将立即在对应页面显示出来,达到“即时发布、即时见效”的功能; 平台运行应该快速、稳定、高效和可靠; 在结构上应具有很好的可扩展性,便于将来的功能扩展和维护; 新品及特价物品的展示; 物品分类详尽,可按不同的类别查看物品信息 按物品的大类级物品的名称进行模糊查询 物品销售排行榜(2) 可行性分析 广泛性学生是网络购物的一个大的群体,我们不可忽视。同时,学生也是我们巨大的货物资源。 多样性 我们拥有丰富的货源,物美价廉的产品。 新潮性 “电科院校
11、园二手交易平台”面对面交易、附近商品定位、砍价捡便宜、毕业季等等,让我们从其他传统购物网站脱颖而出。 有效性“电科院校园二手交易平台”以少量的时间和资金建立校园二手物品信息门户网站并架设一定范围的商务网站,如百度、谷歌等等。 可行性根据我们在电科院校园内问卷调查的结果分析,得出我们的网站在校园里有很大市场潜力,首先,有80%的同学愿意在二手网站上出售自己的闲置商品;其次,有60%的同学愿意在二手市场上购买商品。(具体数据如下表)表2.2-1 调查问卷调查整理调查项目男女总计比例(约)男女比例3719561.9:1愿意购买二手商品2414381.7:1不愿意购买二手商品135182.6:1愿意面
12、对面交易307374.2:1不愿意面对面交易712190.5:1愿意网银支付2718451.5:1不愿意网银支付1011110:1愿意出售闲置物品3715522.4:1不愿意出售闲置物品0440:42.3 总体设计“电科院校园二手交易平台”是一个典型的JSP数据库开发应用程序,由前台静态网页和后台动态网页2部分组成。(1) 前台物品展示该部分主要包括二手物品浏览、二手物品查询及活动公告等等页面。“电科院校园二手交易平台”前台页面结构如图2.3-1所示图2.3-1 “电科院校园二手交易平台”前台页面结构图(2) 后台管理该部分主要针对平台内的一些基础数据进行有效的管理,包括物品管理、学生用户管理
13、、已购武品管理、活动管理等。“电科院校园二手交易平台”后台动态网页结构如图2.3-2所示图2.3-2 “电科院校园二手交易平台”后台动态网页结构图2.4 平台体系结构分析(1)C/S结构与B/S结构客户/服务器(CLIENT/SERVER)结构,是将一个系统分解为前台的客户应用程序和后台的服务器部分,通过网络连接应用程序和服务器。这种结构的核心是客户应用程序向服务器发送服务请求,服务器完成后端处理。服务器是一台管理数据资源并执行数据库引擎功能(加数据存储、操作和保护)的计算机,处理结构由服务器发回客户应用程序,由客户应用程序对处理结构进行显示。这种结构的优点是只有处理后的数据在网络中传递,大大
14、减轻了网络的负担,而且由于通过服务器端统一管理数据,易于保证数据的一致性。B/S结构,即Browser/Server(浏览器/服务器)结构,是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户界面完全通过WWW浏览器实现,一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现,形成所谓3层结构。B/S结构利用不断成熟和普及的浏览器技术实现原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构,.net也是在这样一种背景下被提出来的架构,JAVA技术已经是很成熟的应用了。(2)B/S
15、结构与C/S结构的优越性C/S(Client/Server,客户端/服务器)是建立在局域网的基础上的,B/S是建立在广域网的基础上的。传统的C/S体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是Client端还是Server端都还需要特定的软件,没能提供用户真正期望的开放环境;B/S结构则不同,它的前端是以TCP/IP协议为基础的,企业内的WWW服务器可以接受安装有Web浏览程序的Internet终端的访问,作为最终用户,只要通过Web浏览器,各种处理任务都可以调用系统资源来完成,这样大大简化了客户端,减轻了系统维护与升级的成本和工作量,降低了用户的总体拥有成本
16、。总的来说,两者有如下差别:硬件环境不同C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。B/S 建立在广域网之上的, 不必是专门的网络硬件环境,例如电话上网, 租用设备, 信息自己管理, 有比C/S更强的适应范围, 一般只要有操作系统和浏览器就行。对安全要求不同 C/S 一般面向相对固定的用户群, 对信息安全的控制能力很强。 一般高度机密的信息系统采用C/S 结构适宜, 可以通过B/S发布部分可公开信息。B/S 建立在广域网之上, 对安全的控制能力相对弱, 面向是不可知的用户群。对程序架构不同 C/S 程序可以更加注重流程, 可以对权限
17、多层次校验, 对系统运行速度可以较少考虑。B/S 对安全以及访问速度的多重的考虑, 建立在需要更加优化的基础之上。软件重用不同C/S 程序可以不可避免的整体性考虑, 构件的重用性不如在B/S要求下的构件的重用性好。B/S 对的多重结构,要求构件相对独立的功能。 能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。系统维护不同 系统维护是软件生存周期中,开销大,相当重要C/S 程序由于整体性,必须整体考察,处理出现的问题以及系统升级难, 可能是再做一个全新的系统。B/S 构件组成方面构件个别的更换,实现系统的无缝升级。 系统维护开销减到最小,用户从网上自己下载安装就可以实现升
18、级。 处理问题不同 C/S 程序可以处理用户面固定,并且在相同区域, 安全要求高的需求,与操作系统相关, 应该都是相同的系统。B/S 建立在广域网上, 面向不同的用户群,分散地域, 这是C/S无法作到的,与操作系统平台关系最小。 用户接口不同 C/S 多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。B/S 建立在浏览器上, 有更加丰富和生动的表现方式与用户交流, 并且大部分难度减低,降低开发成本。信息流不同 C/S 程序一般是典型的中央集权的机械式处理,交互性相对低。B/S 信息流向可变化。成本降低,选择更多软件系统的改进和升级越来越频繁,B/S架构的产品明显体现的更方便的特
19、性。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,如果是异地只需要把服务器连接上网即可立即进行维护和升级,这对人力、时间、费用的节省是相当惊人的。传统的C/S结构的软件需要针对不同的操作系统系统开发不同版本的软件,由于产品的更新换代十分快,这么高的代价和低效率已经越来越不适应了。在JAVA这样的跨平台语言出现之后B/S架构更是飞快地普及起来了。面向电子商务时代的技术将来所有的应用系统几乎都在互联网上运行,企业发展电子商务也是不可避免的,而B/S架构的软件则代表了将来的技术,只要连上互联网或内部广域网就可以与全球的客户相连,与各地的分支机构相
20、连。综上所述,可以看出B/S结构的众多优点5,比其他结构的先进性,无论是办公自动化管理系统,人力资源管理系统,客户关系管理系统,ERP等等,发展的趋势是不断融合,结合当今这些方面的发展,我们可以得出这样的结论:采用统一的B/S结构开发的产品无论是现在还是将来都是最好的选择,而在今后的实际工作开发中,则应该首选B/S结构。2.5 技术方案选取(1)开发语言随着互联网技术的不断发展,基于浏览器/服务器(Browser/Server 简称B/S)体系结构的应用程序得到了空前广泛的应用。但是服务器之间的通讯,尤其是在不同平台上运行的服务器之间的通讯仍然不是一件容易的事情。因为大多数Internet应用
21、程序都是以数据库为中心的,方便的访问多种数据源的能力也比以往任何时候都更加重要。JSP无疑可以轻松地实现这类功能,JSP技术是一种服务器端的HTML页面中嵌入JAVA代码的脚本语言,它比一般脚本语言的执行速度更快,由于JSP是基于JAVA语言的,所以它可以运行在UNIX/LINUX和WINDOWS平台上,是一种难得的动态网页开发语言。在动态内容的解决问题中,还存在其他的解决方法,但是开发人员要掌握这些技术很难。例如,Java Servlets这样的技术就可以使得用Java语言编写交互式的应用程序的服务器端的代码变得更加简单。Java Servlets就是一个基于Java技术的运行在服务器端的程
22、序(与Applet不同,后者运行在浏览器端)。开发人员编写出Servlet程序,用来接收来自Web浏览器的HTTP请求,动态地生成响应,然后发送包含HTML或XML文档到浏览器。但是使用这种方法,整个网页必须都在Java Servlet中制作。如果开发人员或者Web管理人员想要调整页面的显示,就不得不从新编辑并编译Java Servlet程序。采用这种方法,编写带有动态内容的页面需要有很熟练的应用程序开发技巧和经验。很显然,一个简单的创建动态页面的解决方案要能解决以下的问题: 能够在任何Web或应用程序服务器上运行将应用程序逻辑和页面显示分离能够快速地开发和测试简化开发基于Web的交互式应用程
23、序的过程JavaServer Pages (JSP)满足这些要求,它整合了存在的Java编程环境提供支持的技术和工具,产生了一种新的、开发基于Web应用程序的方法,这个方法给予使用基于组件应用的逻辑页面的设计者提供了强大的功能。(2)开发模式选择JSP有两中开发模式JSP+JavaBeans和JSP+Servlet+JavaBeans,在模式一中,JSP页面独自响应请求并将处理结果返回客户。所有的数据通过Bean来处理JSP实现页面的表现。模式一技术实现了页面的表现-和页面的商业逻辑相分离。大量使用模式一形式,常常会导致页面被嵌入大量的脚本语言或JAVA代码。当需要处理的商业逻辑很复杂时,这种
24、情况会变得非常糟糕。大量的代码会使整个页面变得常复杂。对于前端界面设计人员来说,这简直不可想象。这种情况在大项目中最为常见,这也造成了代码的开发和维护出现困难,造成了不必要的资源浪费,在任何项目中,这样的模式总会导致多多少少的定义不清的响应和项目管理的困难。 综上所诉,模式一不能满足大型项目的需要,但是可以较好的满足小型应用,在简单的应用中可以考虑模式一。模式二JSP+Servlet+JavaBeans中 ,Servlets技术是一种采用JAVA技术来实现CGI功能的一种术。Servlets技术是运行在WEB服务器上,用来生成WEB页面。Servlets技术非常实用于服务器端的处理和编程,并且
25、Servlet会长期驻留在他们所处的位置。 但是在实际的项目开发过程中,页面设计者可以方便地使用普通HTML工具来开发JSP页面,Servlet却更适合于后端开发者使用,开发Servlet需要的是JAVA集成开发环境,也就是说Servlet技术更需要编程人员。 模式二技术结合了JSP和Servlet技术充分体现了两者的技术优点。在此模式中通过JSP来表现页面。通过Servlet来完成大量的事务处理。 Servlet充当一个控制者的角色,并负责向客户发送请求。Servlet创建JSP所需要的Bean和对象,然后根据用户的请求行为,决定将哪个JSP页面发送给客户。 从开发的观点,模式二具有更清晰的
26、页面表现,清楚的开发者角色划分,可以充分利用开发小组的界面设计人员,这些优势在大型项目开发中表现的尤为突出,使用这一模式,可以充分发挥每个开发者各自的特长,界面设计人员可以充分发挥自己的表现力,设计出优美的界面表现形式,设计人员可以充分发挥自己的商务处理思维,来实现项目中的业务处理。在大型项目中,模式二更被采用。但是,本系统开发只是一个小型的JSP应用,同时由于Servlet难于掌握,所以在本课题中采用了模式一开发,既JSP+JavaBean。(3)数据库SQL Server 2008是一个分布式的关系型数据库管理系统,具有客户/服务器体系结构。Mircrosoft SQL Server 20
27、08是一个应用广泛的数据库管理系统,具有许多显著特点,例如,用户喜欢的易用性、适合分布式组织的可伸缩性、用于决策支持的数据仓库功能、与许多其他服务器软件紧密关联的集成性、良好的性能价格比等。SQL Server 2008系统中,数据库的管理采取了先进的动态管理机制,数据库的大小可以随着数据量的变化而缩小或者扩大。另外,用户数据都是非常重要的和保密的,这些数据存储在Mircrosoft SQL Server 2008系统中有绝对的安全性保障,有完善的用户帐户策略和许可机制,只有经过授权的用户才能访问系统,并且执行相应的操作和访问允许访问的数据。未经授权的用户既不能执行相应的操作,也不能访问数据库
28、中的相应数据。SQL Server 2008系统具有强大的网上功能,可以在Internet上发布数据库中的数据。在Mircrosoft SQL Server 2008系统中,允许用户简单的使用一些向导和工具把数据库的数据发布到网络上,并且可以根据需要来调度修改已经发布的数据3 平台实现主要技术3.1 相关技术介绍3.1.1 JSP技术简介在开发JSP规范的过程中,Sun 公司与许许多多主要的Web服务器、应用服务器和开发工具供应商,还有各种各样富有经验的开发团体进行合作。最后找到了一种平衡了应用和页面开发的具有可移植性和易用性的开发方法,JSP技术特征在多个方面加速了动态Web页面的开发:(1
29、)将内容的生成和显示进行分离使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者小脚本来生成页面上的动态内容,这些内容是根据请求来变化的,例如请求帐户信息或者特定的一瓶酒的价格。生成内容的逻辑部分被封装在JavaBeans组件中,并且捆绑在小脚本中,所有的脚本在服务器端运行。如果核心逻辑被封装在Beans中,那么其他人,如Web管理人员和页面设计者,在编辑和使用JSP页面的时候,将不会影响到内容的生成。在服务器端,JSP引擎解释JSP标识和小脚本,生成客户端请求的内容,例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者其他
30、文件,并且将结果以HTML(或者XML)页面的形式发送回浏览器。这将有助于作者保护自己的代码,并且又保证任何基于HTML的Web浏览器的完全可用性。(2)强调可重用的组件绝大多数JSP页面依赖于可重用的,跨平台的组件(JavaBeans或者Enterprise JavaBeansTM组件)来执行应用程序所要求的更为复杂的处理问题。开发人员能够共享和交换执行普通操作的组件,或者发布这些组件使更多的使用者或者客户团体能够使用。(3)采用标识简化页面开发Web页面开发人员不会都是熟悉脚本语言的编程人员。JavaServer Page技术封装了许多功能,这些功能是容易使用的、同时与JSP相关的XML标
31、识中进行动态内容的生成时需要的。通过开发定制化标识库,JSP技术是可扩展的。今后,第三方开发人员和其他人员可以将常用的功能创建到自己的标识库。这使得Web页面开发人员能够象使用熟悉的工具一样来使用标识来执行特定功能的构件来工作。JSP技术很容易整合到多种应用体系结构中,以便使用现存的工具和技巧,并且扩展到能够支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用开发。由于JSP页面的内置脚本语言是基于Java编程语言的,并且所有的JSP页面都能被编译成为Java Servlet,JSP页面就具有
32、Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。随着越来越多的厂家将对JSP的支持添加到他们的产品中,我们可以选择不同的服务器和工具,因为更改工具或服务器并不影响当前的应用。当与Java 2平台,企业版(J2EE)8和Enterprise JavaBean技术整合时,JSP页面提了供企业级的扩展性能,这对于在虚拟企业中部署基于Web的应用是必需的。3.1.2服务器Tomcat技术简介大多数人(大概29)都喜欢将Apache Tomcat当作JSP应用服务器使用。有人可能会说,它之所以受欢迎是因为这个服务器是免
33、费和开放源代码的,但是真正的原因远不止这些。Apache Tomcat能够受欢迎,不仅是工作性能非常好,还有没有初始的开发成本开销等有力的竞争因素,但这不是决定因素。Tomcat 结构非常合理,更由于Tomcat 是Apache 组织的产品,这个组织有着雄厚的技术更新力量,并且Tomcat7.0 很好的支持了JSP2.0 规范,因此有着很好的发展前景。Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司以及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat
34、中得到体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界内的地位。 Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:也处理Html页面,但是与Apache相比,它的处理静态Html的能力就不如Apache。JDK 是SUN 公司的JAVA应用程序和组件的开发环境,是编译、测试工具,也是提供JAVA 程序的 JAVA 虚拟机平台,是调试和运行JSP 所不可缺少的工具9。3.1.3 JavaBean组件技术简介软件开发的真正目的之一是利用在程序编码方面的投资,以便在同一公司或者不同公司的其他开发中重用程序编码,近年来,
35、编程人员投入大量精力以便建立可重用的软件、可重用的软件组件,早期用在面向对象编程方面中的投资已经在Java、C#等编程语言的开发中充分实现,很多软件可以不用做很大的改变就可以运行在各种平台上。JavaBeans描述了Java的软件组件模型,这个模型被设计成使第三方厂家可以生成和销售能够集成到其他开发厂家或者其他开发人员开发的软件产品的Java组件。 应用程序开发者可以从开发厂家购买现成的JavaBeans组件,拖放到集成开发环境的工具箱中,再将其应用于应用软件的开发,对于JavaBeans组件的属性、行为可以进行必要的修改、测试和修订而不必重新编写和编译程序。在JavaBeans模型中Java
36、Beans组件可以被修改或者与其他JavaBeans组件组合以生成新的JavaBeans组件或完整的Java应用程序。Java应用程序在运行时,最终用户也可以通过JavaBeans组件设计者或应用程序开发者所建立的属性存取方法setXXX方法和getXXX方法修改JavaBeans组件的属性。这些属性可能是颜色和形状等简单属性,也可能是影响JavaBeans组件总体行为的复杂属性。JavaBeans组件模型使得软件可以设计成便于修改和便于升级。每个JavaBeans组件都包含了一组属性、操作和事件处理器。将若干个JavaBeans组件组合起来就可以生成设计者、开发者所需要的特定运行行为,Jav
37、aBeans组件存放于容器或工具库中,供开发者开发应用程序。 JavaBeans就是一个可以复用软件模型。JavaBeans在某个容器中运行提供具体的操作性能。JavaBeans是建立应用程序的建筑模块。大多数常用的JavaBeans通常是中小型控制程序,但我们也可以编写包装整个应用程序运行逻辑的JavaBeans组件,并将其嵌入到复合文档中,以便实现更为复杂的功能。 一般来说JavaBeans可以表示为简单的GUI组件,可以是按钮组件、游标、菜单等等。这些简单的JavaBeans组件提供了告诉用户什么是JavaBeans的直观方法。但我们也可以编写一些不可见的JavaBeans,用于接受事件
38、和在幕后工作,例如访问数据库执行查询操作的,JavaBeans它们在运行时刻不需要任何可视的界面。在JSP程序中所用的JavaBeans一般以不可见的组件为主。可见的JavaBeans一般用于编写Applet程序或者Java应用程序。3.1.4 JavaBean技术简介操作指令用于在JSP页面中实例化一个JavaBean组件,这个实例化的JavaBean组件对象将可以在这个JSP程序的其它地方被调用。操作指令的基本语法形式如下所示: 或者 body 语法参数描述:1) id属性用来设定JavaBeans的名称,利用id可以识别在同一个JSP程序中使用的不同的JavaBeans组件实例。2) c
39、lass属性指定JSP引擎查找JavaBeans代码的路径,一般是这个JavaBean所对应的Java类名。3) scope属性用于指定JavaBeans实例对象的生命周期,亦即这个JavaBean的有效作用范围。scope的值可能是page、request、session以及application。3.3JSP中CSS样式的应用CSS又叫做叠层样式表,它是用来进行网页风格设计的。通过设立样式表,可以统一地控制JSP中各标志的显示属性。而级联样式表可以使人更能有效地控制网页外观。使用级联样式表,可以扩充精确指定网页元素位置,外观以及创建特殊效果的能力。 而统一的CSS面板功能更为强大,界面更加
40、简洁,从而让用户能够方便地了解网页中正在使用的样式,并轻松地进行修改,而不需浏览大量的程序代码。它更为主观地显示出来应用在网页的特定元素上的样式,识别出已定义的属性,并且能够快速地添加或编辑器属性。并且可以在每个JSP页面都应用,不用重复地使用相同的代码,减小代码的使用。在该平台中使用了hellking.css、hellking2.css、hellking3.css和hellking4.css四个级联样式表,分别对文本文字做了字体和字号的规定,以及一些网页的统一背景样式。其基本指令为:4 平台结构设计4.1 Struts的体系结构Struts是建立基于JSP模式2体系结构的完垒开放源代码的WE
41、B框架。包含一系列相互合作的类、Servlet和JSP标记,它们共同组成了可重用的模式2模板。Struts框架中的备种组件如图4.3.1所示。ClientYController(ActionServlet)Struts-config.html业务逻辑(Action class)Model(ActionForm)View(JSP)请求分配传递参数选取转发响应图4.3.1 Struts的体结构图在这些组件中,模型中的逻辑Bean由Struts提供org、apache、struts、 Action类来实现,开发者要扩展此类,并且覆盖类巾定义的一个perform()方法以适应特定请求的业务逻辑。数据B
42、ean由Struts中的org apachestrutsaction ActionForm类来实现,开发者通过扩展此类,用来存储来自客户端的请求参数。在视图的实现中,Struts使用一组可扩展的自定义标签库(TagLib)来实现页面设计与应用逻辑实现的分离。用Struts标记建立表单,生成动态页面,通过Struts标记可以读取ActionForm中的数据。在Struts体系结构中,基本的控制器组件是其提供的ActJonServlet类中的servlet。它在处理一个请求时会完成:(1)把来自客户端的请求服务转到相应的Action去执行相关的业务逻辑。如果这是特定Action类收到的第一个请求,
43、它将初始化这个实例并且进行缓存。请求的URI与特定Action类的映射由ActionMapping类进行描述。(2)把来自客户端的请求参数移植到相应的ActionForm bean。如果没有相应ActionForm bean实例,将创建它再移植参数。此特定ActionForm bean也在ActionMapping中卢明与上面的Action相关联。相应Action能更新此ActionForm bean中的数据,JSP页叫读取ActionForm bean中的数据。(3)渊H相应的Action类实例中的perform()方法,并将相关联的ActionForm bean、ActionMapping
44、对象、request和response对象传送给此Action。(4)最后,根据Action返回的ActionForward对象,将响成转发到ActionForward对象中所指定的JSP页。电科院二手交易平台的模型结构如下图所示:客户端浏览器客户端浏览器客户端浏览器Web层业务层数据访问层系统配置数据库图 4.3-1 “电科院二手交易平台”的模型结构4.2 基于Struts框架的电科院二手交易平台的应用分析使用Struts框架开发此系统。首先征数据库中建立用户表和用户信息表,用户表存储用户名、用户密码 (前者为联合主码)两种信息,用户登录的信息存储在一个数据库中,使用一个辅助类:LoginS
45、ervlet帮助从JSP页面中读取用户输入的用户名和密码。此系统分成4个软件组件包:(1)登录功能的组件为:index.jsp、LogonBean.java、LogonServl.java (2)注册功能的组件为:register.jsp、RegisterServlet.java;(3)修改个人信息组件为:update.jsp,UpdateServlet.java 。以上各软件组件包设计完成后,建立strutsconfig.xml文件,把各组件包中ActionFormbean、Action类都在struts-config.xml中配置及其关联。最后配置应用刷程序展开描述符(Webxml)以包括
46、所有必需的Struts组件。在此框架中的控制器可直接使用St rut s提供的ActionServlet类,故设计的重点是再组件中的模型和视图设计4.2.1 业务流程分析(1)浏览与选择二手物品信息:学生用户进入网站,不需身份确认就可以在网站上随意浏览,登录系统后则可挑选相应的二手物品(可增加、删除、修改已选物品)。 (2)判断:学生用户确定所选的二手物品的信息后,系统将判断该学生用户是否注册,如果是,则可直接填写订单;否则,提示学生用户登记注册;(3)提交订单:已选二手物品的信息需填写订单细节。(4)注册:学生用户可在平台上注册后提交申请;(5)确认:后台管理将实时得到学生用户的注册信息,通过电话及其他方式确认,当确认