JSP课程设计文档格式.docx
- 文档编号:18320184
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:34
- 大小:2.13MB
JSP课程设计文档格式.docx
《JSP课程设计文档格式.docx》由会员分享,可在线阅读,更多相关《JSP课程设计文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
3、全部上机进行系统模块开发和模块测试。
4、系统集成和集成测试,撰写系统操作说明书和项目实训总结报告。
二课程设计所需软件、硬件等
软件:
Windows2000以上的操作系统、JDK开发包、MyEclipse开发环境
ORACLE,tomcat
硬件:
机房台式计算机
1开发工具与应用技术简介
1.1MyEclipse概述
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对Eclipse
IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。
它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,
CSS,
Javascript,SQL,Hibernate。
在结构上,MyEclipse的特征可以被分为7类:
1.JavaEE模型
2.WEB开发工具
3.EJB开发工具
4.应用程序服务器的连接器
5.JavaEE项目部署服务
6.数据库服务
7.MyEclipse整合帮助
对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。
MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。
简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。
MyEclipse6.0以后版本安装时不需安装Eclipse。
1.2JSP简介
JSP(JavaServerPages)是由SunMicrosystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。
用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统统上运行。
JSP技术使用Java编程语言言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与Java
Servlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
1.3ORACLE简介
ORACLE数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/S体系结构的数据库之一。
比如SilverStream就是基于数据库的一种中间件。
ORACLE数据库是目前世界上使用最为广泛的数据库管理系统,作为一个通用的数据库系统,它具有完整的数据管理功能;
作为一个关系数据库,它是一个完备关系的产品;
作为分布式数据库它实现了分布式处理功能。
但它的所有知识,只要在一种机型上学习了ORACLE知识,便能在各种类型的机器上使用它。
1.4Tomcat简介
Tomcat是Apache软件基金下的一个开源项目,是在SUN的JSWDK的基础上发展起来的另一个优秀的JSP服务器,它不但支持Servlet,而且还提供了Web服务器的功能。
Tomcat是一个基于HTTP协议的webappclcationserver,能够接收Http请求和返回Http应答。
Tomcat内置了一个web容器catalina,主要就是实例化web组件(servlet,jsp)和创建一些java对象(HttpServletResquest、HttpServletResponse),启动一个线程去调用web组件,并且将前面创建的这些对象传给servlet,HttpServletRequest里面包含了Browser这一端传过来的数据信息,我们在servlet里面就可以去获取到这些信息。
HttpServletResponse对象提供了一些方法,可以往Browser这一端发送数据。
1.5J2EE简介
在SUN公司制定的J2EE规范中,JSP,Servlet,EJB构成了整个J2EE的核心,但由于开源软件的发展,由许多商业性或者非商业性的厂商或组织对整个J2EE规范做了增强。
目前,整个J2EE框架的开发模型如下:
1).运行在客户端机器上的客户层组件。
2).运行在J2EE服务器上的Web层组件。
3).运行在J2EE服务器上的业务逻辑层组件。
4).运行在EIS服务器上的企业信息系统(Enterpriseinformationsystem)层软件。
图2.2J2EE框架的开发模型
其中在各层使用的主要技术如下:
1).客户层:
HTML,Javascript,Ajax
2).表现层:
JSP,Servlet,Struts
3).业务逻辑层:
JavaBean,EJB,Spring
4).集成层(持久化层):
JDBC,Hibernate,JCA
本系统采用的主要技术如下:
HTML+Javascript+JSP+Servlet+JavaBean
1.6JSP技术介绍
1).JSP是由SUN公司倡导、许多公司参与一起建立的一种动态网页技术标准。
2).JSP技术是用JAVA语言作为脚本语言的,JSP网页为整个服务器端的JAVA库单元提供了一个接口来服务于HTTP的应用程序。
3).JSP的本质就是Servlet,它是Servlet技术的扩展。
4).在整个J2EE体系中,JSP的主要技术优势在于显示数据。
1.7Servlet技术介绍
1).Servlet由Sun公司倡导,许多公司参与一起建立的一种服务器端技术标准。
2).如果把HTML代码中嵌入Java代码称作为JSP,那么在Java代码中嵌入HTML代码就是Servlet。
3).在整个J2EE体系中,Servlet的主要技术优势在于流程控制。
1.8JavaBean技术介绍
1).JavaBean也是一种开发标准,只是这个标准不要求严格的执行。
2).JavaBean是一种Java类,它遵从一定的设计模式,使它们易于和其他开发工具和组件一起使用。
3).主要特点包括:
提供一个无参构造器,一组setXxx和getXxx方法,还可能存在一些业务逻辑方法。
4).JavaBean的技术优势:
简单,与任何Web容器无耦合,善长于处理业务逻辑。
2系统分析
2.1需求分析
2.1.1功能性需求
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。
作为Internet上一种先进的,易于被人们所接受的信息检索手段,WorldWideWeb(简称WWW)发展十分迅速,成为目前世界上最大的信息资源宝库。
据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,因此,建设一个好的Web站点对于一个机构的发展十分重要。
近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。
这点启发了我们,如果能根据用户的喜好为不同的用户显示其个性化的页面,即着重显示该用户感兴趣的内容,将为用户节约大量的检索时间,而且这样的网页显然是更具有吸引力的。
一些站点已经在这方面做出了一定的尝试,通常采用的方法是,在用户登陆时为其提供一系列的选项,使用户能够对站点进行一些自主的设置。
这样做能够使站点呈现一定程度的个性化,但是对用户来讲,还是比较烦琐,而且在用户了解一个站点前让其对站点进行设置,其结果未免有些粗糙。
于是我们构想了这样一种方案,对用户登陆后的动作进行跟踪,分析,发掘用户点击的规律,即用户先后点击的关联规则,这样,在用户点击一个主题(链接)之后,系统能够自动生成一个页面,其中包含了该主题下用户经常关注的内容(若干链接),这样便在无须用户做出任何额外工作的情况下实现了为用户量身订做的个性化页面。
要实现这样的功能,离不开后台数据库的支持。
用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。
本文中数据库服务器端采用了MYSQL数据库并以先进的JDBC技术进行数据库存取等操作,使Web与数据库紧密联系起来。
开发BBS论坛系统的目的是为了提供一个大家交流的平台,供人们发表看法、探讨经验、讨论问题。
因此,BBS论坛系统的最基本的功能是发表主题,其次是其它人员根据主题发表自己的看法,即回复主题。
考虑到现实情况,并不是每一个访问的游客都具有发表主题的权利,所以必须用一个身份绑定用户,赋予其发表主题的权利,这就需要实现用户注册及登录的功能。
每一个系统都需要管理员这个特殊群体的存在,所以也需要实现管理员登陆的功能。
管理员区别于一般用户的地方在于,管理员往往具有更高的权限,有权对用户信息和帖子内容作出某些“增删改查”的操作,所以,针对管理员,系统应该实现删除和修改帖子以及对用户的管理等功能,以实现管理员对社区的管理。
考虑到社区访问量会很大,用户发表的帖子的数量自然很多,在浩瀚的帖子海洋中,如何才能查看自己感兴趣的帖子成为了一个不得不考虑的问题。
所以,系统还应该实现搜索帖子的功能,用模糊查询的方法,对社区的帖子进行筛检的工作。
本系统针对用户还实现了一个特殊的功能,即邮件发送。
如果某个用户对其他的用户感兴趣,那么可以通过将邮件发送到指定用户注册时所填写的邮箱地址,这样的话,就能够实现即时通讯的功能。
综上所述,BBS论坛系统的功能就可以进行如下划分:
1、前台部分
主要涉及系统前台,即用户所能看到的网页所涉及到的功能。
主要包括:
用户注册/登录,发表新主题,回复主题,查看主题内容,搜索主题,邮件发送。
2、后台管理部分
主要是数据库的操作,针对系统管理员设置的一些功能。
管理员登录,删除与修改主题和用户信息管理。
图2-1系统功能介绍
数据库部分,本系统新建了系统用数据库bbs,并在其下创建了五张表:
user(用户表)、article(主题表)、admin(管理员表)、grade(用户等级表)和edit(版块类别)。
本系统在设计之初,为简单起见,欲暂不考虑系统管理员的设置,默认此系统只有一个管理员账户,用户名和密码均为“admin”。
但这种做法在现实生活中是很难满足实际需求的。
所以,最终创建了管理员表admin,以实现对管理员信息的统一存储和管理。
理论上应该有四个业务角色:
游客、用户、管理员以及帖子。
系统的用例图如下:
图2-2系统用例图
从用例图中我们可以看出,游客的权限最低,只能查看、回复和搜索主题;
用户的权限居中,能够发布、回复、搜索和查看主题;
管理员的权限最高,除了能够实现用户的所有功能,还能够修改和删除主题,并且能够对用户信息进行管理,具有行使系统所能够提供的一切权利。
说明:
用户和游客(非用户)的身份区别主要通过“用户注册”的功能实现,系统通过sql语句将注册用户信息保存到user表中,用户登录时查询user表,并以返回结果的有无判断个人的真实身份。
图2-3一层数据流图
2.1.2非功能性需求
1>
平台限制。
本系统是在Windowxp环境下开发,对系统没有过高的其它要求。
2>
服务器支持。
本系统是基于B/S模式下的论坛系统,采用的服务器是Tomcat7.0.5版本。
3>
数据库支持。
本系统采用的数据库是MySQL5.1版本,同类型或更高级别的数据库管理软件都能适用。
4>
基于MyEclipse平台下开发。
2.2可行性分析
需求分析回答的是“做什么,不做什么”的问题,而可行性分析回答的则是“做,还是不做”的问题。
可行性分析是在调查分析的基础上,针对新系统的开发是否具有实用性和可能性,对新系统的开发从经济、技术、社会环境和人等发面进行分析和研究。
可行性分析往往能够对决策者提供有价值的依据,以避免投资失误,保证新系统的开发成功。
联想集团领导人柳传志[2006]曾说:
“没钱赚的事我们不干;
有钱赚但投不起钱的事不干;
有钱赚也投的起钱但没有可靠的人选,这样的事也不干。
”可见可行性分析的重要性。
(1)、技术可行性
技术上的可行性分析主要指在现有可用的技术基础上,是否能够顺利完成新系统的开发工作。
从硬件方面来看,计算机硬件的更新速度正在不断提高,与此同时,系统的稳定性也在不断加强。
容量越来越大,性能越来越强,而价钱却越来越低。
所以,仅从硬件方面来看,完全能够提供满意的系统开发环境。
从软件方面来看,该BBS论坛采用了流行的动态网页设计技术(JSP)和当前流行的B/S(浏览器/服务器)设计模式进行开发。
B/S模式本身是随着Internet技术的兴起,对传统C/S结构的一种变化或者改进结构,具有很多传统结构所不具有的优点。
先进的Internet/Intranet(国际互联网/企业内部互联网)技术,保证了B/S结构的强有力态势,将B/S结构的应用转变成为一种特定时代条件下的大势所趋。
本系统的服务器采用的是Tomcat7.0.5版本,Tomcat发展至今,技术上自不必说,性能也很稳定,完全能够担负服务器的重任,辅助完成中小型应用的成功开发。
数据库服务器选用的是MySQL5.1版本,是目前运行速度最快的SQL语言数据库,能够同时处理大量数据,并保证数据的完整性。
它的灵活性、易用性和安全性为新系统的开发提供了一个良好的环境。
(2)、经济可行性
经济可行性所作的工作主要是对项目整体的经济效益进行评估,本系统的目的是模拟一个网上交流的平台,供用户在社区交流经验、探讨问题。
但实际只是用于个人课程设计,不涉及商业上的运作,纯粹模拟,故不存在资金上的流动,也不存在经济不可行的问题。
(3)、社会可行性
随着Internet技术的迅猛发展,BBS论坛已成为越来越多网民彼此交流,获取信息的重要途径。
在论坛上,人们可以发表自己一切感兴趣的话题,也可以根据别人所发的主题发表一些自己的看法,心得体会等。
通过BBS论坛获取信息及发表主题已成为一种时尚的生活方式。
BBS论坛缩短了人们之间的距离,在不知不觉间,早已成为人们网上生活的必备工具,可见论坛存在的必要性和发展的前景。
3系统总体设计
3.1系统目标
基于BBS论坛在现实生活的实际应用,本系统的系统目标是提供一个以现实环境为基础的网上模拟交流平台,通过它,人们可以不必拘泥于空间和时间上的限制,方便交流,畅所欲言,同时也能够更加便利的看到周围人的想法,观点,最大化的丰富人们的视野和生活,让人随时都能身在其中,随时也能置身事外。
3.2系统功能划分
3.2.1前台功能结构
系统的前台初始页面如下,登录地址为“http:
//localhost:
8080/BBS”:
图3-1卓京论坛网首页
当用户登录到论坛首页时,其默认的身份就是游客,只能查看、回复、搜索帖子,而不能执行发帖等其它操作。
如果用户为非注册用户,则其可以进行注册以获得一个登录身份。
如果用户为已注册用户,则其可以直接进行登录,然后以注册用户的身份执行诸如发表新主题、查看新主题、回复主题、搜索主题等一系列操作。
前台系统流程图具体如下:
图3-2前台系统流程图
此时,用户已经具有了一种身份,此后用户可以以此种身份执行诸如发表新主题、查看主题、搜索主题、回复主题等操作。
3.2.2后台功能结构
后台功能主要是针对管理员而设置的,用户以管理员的身份登陆后,就能执行后台管理的操作,具体到此BBS论坛,主要是指删除和修改主题以及对用户信息的管理。
后台系统流程图如下:
图3-3后台系统流程图
3.3系统开发环境
3.3.1开发环境
在建立工程前,需要首先搭建开发环境。
此BBS论坛系统的开发需要用到以下几种工具,故开发前需要进行相应的下载和安装:
开发平台:
MyEclipse9.0M2
Web服务器:
Tomcat7.0.5
数据库服务器:
oracle10g
Java开发工具:
JDK1.6.0
辅助工具:
DreamweaverCS4
3.3.2系统平台体系结构的选择
在系统开发领域内,目前存在两大主流系统平台的开发结构,一种是C/S结构,而另一种是B/S结构。
C/S结构,即大家熟知的客户端/服务器结构,是一种应用较早,相对传统的开发模式。
通过它,可以充分利用两端硬件环境的优势,将任务合理的分配到Client端和Server端,降低了系统的通讯开销。
B/S结构,即浏览器/服务器结构,是随着Internet的兴起,对C/S结构的一种变化或者改进。
在这种结构下,用户不需要借助于客户端软件,通过WWW浏览器,即可实现系统的全部既定功能。
在这种模式下,一部分事务逻辑在前段实现,但是主要事务逻辑在服务器端实现,大大简化了客户端电脑载荷,减轻了系统维护与升级的成本,从而降低了用户的整体成本。
从开放程度来说,传统的C/S结构虽然采用的是开放模式,但这个开放性只是针对系统开发一级的,在特定的应用中,无论是客户端还是服务器端都还需要特定的软件支持。
而B/S结构,是一次性到位的开发,应用此模式开发的系统,不同人员,在不同地点,以不同的接入方式(比如LAN、WAN等)访问并操作共同的数据库,能有效地保护数据平台和管理访问权限,服务器的数据库也很安全。
特别是在Java这样的跨平台语言出现之后,B/S架构管理软件起来更是显得方便,快捷和高效。
可以说,B/S是乘着Internet兴起的风而杨风远航的,是适应时代的产物。
但是,B/S也存在着自己的不足,比方说其在大量数据分析,实时控制应用方面就存在着需要改进的地方。
综合考虑,本系统还是考虑使用当下流行的B/S结构作为系统的开发模式。
3.3.3JavaScript语言简介及特点
JavaScript语言是Netscape公司开发的一种脚本性语言(Scriptinglanguage),或者称其为描述性语言。
作为一种编程语言,其出现的使命就是为了适合动态网页制作的需要,颇具工具色彩。
在静态网页Html的基础上,使用JavaScript可以开发交互式Web网页,能够使网页和用户之间实现一种实时性的、动态的、交互性的关系,使得网页包含更多活跃的元素和更加精彩内容。
可以说,JavaScript是专门为制作Web网页而量身定做的一种简单的编程语言。
JavaScript是在客户机上执行的,其特点和功能主要是短小精悍,能够大大提高网页的浏览速度和交互能力。
其特有的工具色彩让其在动态网页的开发中找到了用武之地。
3.3.4JSP概述
JSP是由Sun公司在Java语言的基础上开发出来的一种动态网页制作技术,其将标记<
%%>
插入到页面中,从而使网页中的静态部分和动态部分分离开来。
JSP是类似ASP的一种技术,在传统的静态网页HTML文件插入Java程序段和JSP标记,就形成了JSP文件。
JSP技术的强势在于:
1、一次编写,到处运行。
在更换系统时,代码不需要做任何修改。
2、系统的多平台支持。
基本上可以在所有平台上的任意环境下开发,在任意环境中进行系统部署,在任意环境中扩展。
3、强大的可伸缩性。
通过小小的jar文件运行servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,一台服务器到无数台服务器,JSP表现了强大的可伸缩性。
4、多样化和功能强大的开发工具支持,常用的编辑工具有Dreamweaver和MyEclipse等。
3.3.5ORACLE
3.3.6JDBC技术
数据库管理是每个应用系统开发过程中不得不考虑的问题,目前主流的数据库有Oracle、SqlServer、MySql等。
不管使用何种技术,都离不开JDBC技术的支持。
JDBC的全称是JavaDataBasesConnectivitystandard,即Java数据库连接,是一种数据库通用接口采用的主流技术。
其定义了用来访问数据库源的标准Java类库,通过它使用一种标准方法,就能够方便的访问数据库资源。
所以,JDBC又是一种规范,其目标是使应用程序开发人员通过它连接任何提供JDBC驱动程序的数据库系统,这样就使得程序员无需对某种数据库有过多的了解,大大加快了开发过程。
有了JDBC,向各种数据库发送SQL语句就是一件再简单不过的事了。
换言之,有了JDBC,就不必为访问数据库A专门再写一个程序,又为访问数据库B专门写一个程序。
所以,JDBC为Java应用程序与各种不同数据库之间进行对话提供了一个标准的方法,这也是Java语言“一次编写,到处运行”的优势。
4数据库设计
4.1数据库分析
数据库的设计,在应用系统的开发中起着举足轻重的作用。
一个合理、有效的数据库设计不仅是做好系统的保证,也能降低程序的复杂性,使程序的开发过程变得更加容易。
本系统是一个中型的BBS论坛系统,考虑到用户信息量和用户需求等问题,决定采用ORACLE作为项目用数据库。
4.2数据库概念设计
ER图是实体联系图,E-R模型是对现实世界的一种抽象。
其组成部分主要包括实体、联系和属性。
使用这三种成分,我们可以很好的抽象出现实世界中的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JSP 课程设计