资源描述
个人收集整理 勿做商业用途
***学院本科毕业设计(论文)
[计算机学院网站设计与实现]
学生姓名:
学生学号: 200810802002
院(系): 计算机学院
年级专业: 08级信息与计算科学
指导教师: 银星 副教授
助理指导教师:
二〇一二 年 五月
45
摘 要
20世纪90年代以来,计算机网络技术飞速发展,网络化和全球化成为不可抗拒的世界潮流。网站是政府、企事业单位向用户提供信息(包括产品和服务)的一种方式,是政府、企事业开展电子政务、电子商务的基础设施和信息平台.因特网上的网站就像企事业在互联网中的办公大楼,网站所带来的政治、经济、商业利润及其影响是具有深远意义。网站正以惊人的速度扩张,每年有大批的企、事业单位投入资金来发展网站建设。计算机学院网站的建设将方便学院信息的发布和宣传,极大的提高了学院的办事效率,为计算机学院信息化的建设作出了必要的贡献。
关键词 计算机,网络化,信息发布,网站建设
ABSTRACT
Since the 1990s, the computer network technology, the rapid development of networking and globalization become an irresistible trend of the world。 The site is the Government, enterprises and institutions to provide information to users (including products and services) in a way that the government, enterprises and institutions to carry out e-government, e-commerce infrastructure and information platform。 Website on the Internet is like the enterprises on the Internet, office buildings, the site brought about by the political, economic, business profits and its impact is far-reaching significance. The website is expanding at an alarming rate every year a large number of enterprises, institutions, investment funds to develop the site-building。 Computer Science site construction the convenient Institute of information, and the Institute of publicity, which greatly improves the efficiency of the Institute, made the necessary contributions for the construction of the College of information technology.文档为个人收集整理,来源于网络个人收集整理,勿做商业用途
Keyword:computer,network,information dissemination,website building
目 录
摘 要 I
ABSTRACT II
1绪论 3
1.1 选题背景 3
1.2 选题目的和意义 3
2 开发工具及环境介绍 4
2。1 开发工具 4
2。1.1 myEclipse简介 4
2.2。2 Dreamweavar简介 4
2.2 相关技术介绍 5
2.2.1 JSP技术 5
2。2.2 mySql6.0 6
2.2。3 Web服务器 7
2。2。4 连接数据库与JavaScript 9
2。2。5 CSS层 10
2.3 运行环境的搭建和配置 11
2.3.1 安装jdk1。6 11
2。3。2 安装和配置TOMCAT6.0 11
2。3.3 安装MySQL及相关配置 12
3 需求分析 14
3。1 引言 14
3.2 任务概述 14
3.3 可行性分析 15
3。3.1 经济可行性 15
3。3.2 技术可行性 15
3。3.3 效益分析 16
3。4 功能分析 16
4 总体设计 17
4。1 总体设计理念 17
4.2 页面设计 17
4.3 后台设计 19
4.4 数据库设计 20
4。5 类的分布 22
5 详细设计 23
5.1 数据库实体图 23
5.2 后台逻辑实现 26
5。2。1 持久层实现 27
5。2.2 业务层实现 27
5。2。3 控制层实现 27
5.3 模块功能实现 28
5。3.1 登录验证模块 28
5。3。2 信息发布模块 29
5。3。3 上传下载模块 32
5。3.4 户管理模块 33
6 网站测试 36
6.1 测试目的 36
6.2 系统测试 36
7 结论 39
参考文献 40
附录A:HIBERNATE.CFG.XML配置 41
附录B:代码 42
1绪论
1.1 选题背景
在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。Internet上发布信息主要是通过网站来实现的,获取信息也是要在Internet世界中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。为了更好的办学,方便学院信息的发布,提高计算机学院知名度,特构建计算机学院网站。
该学院网站是面向全社会的宣传功能型的学校网站,主要是宣传计算机学院及展示学院的设施,发布学院发展的动态新闻。让更多的人了解该校,为学院学生、家长和老师上网浏览者提供一个纽带,目的是加强宣传,与网下宣传构成一个立体的宣传模式。
1.2 选题目的和意义
通过网站,全面宣传,展示学校风采、优点与特色,发布学院的重大活动安排与招生政策,增强家长与学校之间的沟通,在Internet上实现完成部分校务。网站是社会快速发展的产物,所以网站现在已经普及起来,并且我们现在的生活已经离不开它了.因此这个计算机的网站能够为我们提供各种最新的计算机学院的消息,政策法规,办事指南等等,让学生和学生家长能对计算机学院有个较全面的了解和认识。该网站也方便计算机学院的管理,在网络上完成学院的部分校务,提高学院的办事效率。
2 开发工具及环境介绍
2。1 开发工具
2。1。1 myEclipse简介
Myeclipse10。0MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开 发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, 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.本文为互联网收集,请勿用作商业用途文档为个人收集整理,来源于网络
2。2.2 Dreamweavar简介
Dreamweavar是一个可视化的网页设计和网站管理工具,支持最新的Web技术,包含HTML检查、HTML格式控制、HTML格式化选项、HomeSite/BBEdit捆绑、可视化网页设计、图像编辑、全局查找替换、全FTP功能、处理Flash和Shockwave等多媒体格式和动态HTML、基于团队的Web创作。目前使用得最多的是Dreamweaver MX 2004和Dreamweaver8.0两个版本,前者在功能上比后者强大,能够实现动态网页编程,在此选用Dreamweaver MX 2004.
Macromedia Dreamweaver MX 2004 是一款专业的 HTML 编辑器,用于对 Web 站点、Web 页和 Web 应用程序进行设计、编码和开发。无论您愿意享受手工编写 HTML 代码时的驾驭感还是偏爱在可视化编辑环境中工作,Dreamweaver 都会为您提供有用的工具,使您拥有更加完美的 Web 创作体验。
利用 Dreamweaver 中的可视化编辑功能,您可以快速地创建页面而无需编写任何代码。您可以查看所有站点元素或资源并将它们从易于使用的面板直接拖到文档中。您可以在 Macromedia Fireworks 或其他图形应用程序中创建和编辑图像,然后将它们直接导入 Dreamweaver,或者添加 Macromedia Flash 对象,从而优化您的开发工作流程。
Dreamweaver 还提供了功能全面的编码环境,其中包括代码编辑工具(例如代码颜色和标签完成);有关 HTML、层叠样式表 (CSS)、 JavaScript、 ColdFusion 标记语言 (CFML)、Microsoft Active Server Pages (ASP) 和 JavaServer Pages (JSP) 的参考资料。Macromedia 的可自由导入导出 HTML 技术可导入您手工编码的 HTML 文档而不会重新设置代码的格式,您可以随后用您首选的格式设置样式来重新设置代码的格式。Dreamweaver 还使您可以使用服务器技术(例如 CFML、ASP.NET、ASP、JSP 和 PHP)生成由动态数据库支持的 Web 应用程序。
Dreamweaver 可以完全自定义。您可以创建您自己的对象和命令,修改快捷键,甚至编写JavaScript 代码,用新的行为、属性检查器和站点报告来扩展 Dreamweaver 的功能。
2。2 相关技术介绍
2.2。1 JSP技术
本网站采用JSP技术开发.因为JSP与同类的CGI、ASP、PHP相比有着独特的优势.JSP是Sun属下Javasoft公司推出的技术,使用的Java语言是ASP、PHP和JSP三者中最新的技术。它以JavaServlet技术为基础,又在许多方面作了改进,并且充分借鉴了ASP和PHP一些合理的地方。它的平台无关性胜过ASP技术,而强大的JDBC数据库接口规范又优于PHP技术,而且JSP技术是以JAVA语言为基础的,可以使用JavaBeans组件和自定义标签,因此具有良好的扩展性。
总的来说,JSP业已成为目前主流的动态网页开发技术之一。JSP的优点如下:
(1) 借助JSP技术,Web网页设计人员可以使用HTML或者XML标记来设计和风格化Web页面,使用JSP标记来生成动态Web页面.在服务器端,JSP引擎负责解释JSP标记和脚本,生产请求的内容,然后将结果以HTML页面等形式发送回浏览器。这样开发者可以保护自己的核心代码,同时可以保证任何Web浏览器的高度兼容性。
(2) JSP页面可借助可重用的、跨平台的组件(JavaBean),来执行Web应用所要求的极为复杂的业务处理.能够共享和交换调用一般操作的组件,或者让这些组件被别的开发人员或者开发团队所使用。
(3) 通过开发定制化的标签库等方法,JSP技术可以支持动态扩展技术。
(4) 作为Java的一个重要组成部分,JSP技术能够支持高度复杂的、基于Web的企业级应用。JSP技术可以轻松地与现有多种应用体系架构整合,可以充分利用已有开发工具和技巧,并扩展到企业级分布式应用环境。
此外,JSP技术无论是在跨平台特性、运行效率、企业级软件开发还是商业支持方面都具有优势,从而使其成为目前和未来进行动态网页开发的最佳工具之一。
2.2。2 mySql6.0
这次网站的设计选用mySql6。0作为后台数据库。
MySQL 是一个小型关系型数据库管理系统,开发者为瑞典 MySQL AB 公司。在 2008 年 1 月 16 号被Sun公司收购。目前 MySQL 被广泛 地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成 本低,尤其是开放源码这一特点,许多中小型网站为了降 低网站总体拥有成本而选择了 MySQL 作为网站数据库。
与其他的大型数据库例如 Oracle、 SQL Server 等相比,DB2、MySQL 自有它的不足之处,如规模小、功能有限(MySQL Cluster 的功能和效率都相对比较差)等,但是这丝毫也没有减少它受欢迎的程度。对于一般的个人使用者和中小型企事业单位来说, MySQL提供的功能已经绰绰有余,而且由于 MySQL 是开放源码软件,因此可以大大降低总体拥成本。
2.2.3 Web服务器
Web服务器负责JSP文件的执行.目前支持JSP应用服务器较多,如Tomcat、Resin、Websphere、Weblogic、Jboss等。
(1)Tomcat
Tomcat是Apache公司组织开发飞一种JSP引擎,由于自身具有Web服务器,可以作为独立的Web服务器使用。
如今,基于Web的应用越来越多,传统的Html已经满足不了如今的需求。我们需要一个交互式的Web,于是便诞生了各种Web语言。如 Asp,Jsp,Php等。当然,这些语言与传统的语言有着密切的联系,如Php基于C和C++语言,Jsp基于Java语言。Tomcat即是一个 Jsp和Servlet的运行平台。
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在 Tomcat中得到体现。Tomcat被JavaWorld杂志的编辑选为2001年度最具创新的java产品,可见其在业界的地位。
Tomcat最新版本是7.0x。7.0x与以往版本的架构不同,而是重新设计的。Tomcat7。0x中采用了新的Servlet容器:Catalina,完整的实现了Servlet2.3和Jsp1.2规范.Tomcat提供了各种平台的版本供下载,可以从http://jakarta.apache。org上下载其源代码版或者二进制版.由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性.
与传统的桌面应用程序不同,Tomcat中的应用程序是一个WAR(WebArchive)文件。WAR是Sun提出的一种Web应用程序格式,与JAR类似,也是许多文件的一个压缩包。这个包中的文件按一定目录结构来组织:通常其根目录下包含有Html和Jsp文件或者包含这两种文件的目录,另外还会有一个WEB-INF目录,这个目录很重要.通常在WEB-INF目录下有一个web。xml文件和一个classes目录,web.xml是这个应用的配置文件,而classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean).通常这些所依赖的类也可以打包成JAR放到WEB-INF下的lib目录下,当然也可以放到系统的CLASSPATH中,但那样移植和管理起来不方便。
在 Tomcat中,应用程序的部署很简单,你只需将你的WAR放到Tomcat的webapp目录下,Tomcat会自动检测到这个文件,并将其解压。你在浏览器中访问这个应用的Jsp时,通常第一次会很慢,因为Tomcat要将Jsp转化为Servlet文件,然后编译。编译以后,访问将会很快。另外 Tomcat也提供了一个应用:manager,访问这个应用需要用户名和密码,用户名和密码存储在一个xml文件中。通过这个应用,辅助于Ftp,你可以在远程通过Web部署和撤销应用。当然本地也可以。
Tomcat不仅仅是一个Servlet容器,它也具有传统的Web服务器的功能:处理Html页面。但是与Apache相比,它的处理静态Html的能力就不如Apache。我们可以将Tomcat和Apache集成到一块,让 Apache处理静态Html,而Tomcat处理Jsp和Servlet.这种集成只需要修改一下Apache和Tomcat的配置文件即可.
另外,Tomcat提供Realm支持.Realm类似于Unix里面的group.在Unix中,一个group对应着系统的一定资源,某个group不能访问不属于它的资源.Tomcat用Realm来对不同的应用(类似系统资源)赋给不同的用户(类似group)。没有权限的用户则不能访问这个应用。 Tomcat提供三种Realm,1:JDBCRealm,这个Realm将用户信息存在数据库里,通过JDBC获得用户信息来进行验证. 2:JNDIRealm,用户信息存在基于LDAP的服务器里,通过JNDI获取用户信息.3:MemoryRealm,用户信息存在一个xml文件里面,上面讲的manager应用验证用户时即使用此种Realm.通过Realm我们可以方便地对访问某个应用的客户进行验证.
在 Tomcat7中,你还可以利用Servlet2。3提供的事件监听器功能,来对你的应用或者Session实行监听.Tomcat也提供其它的一些特征,如与SSL集成到一块,实现安全传输。还有Tomcat也提供JNDI支持,这与那些J2EE应用服务器提供的是一致的。说到这里我们要介绍一下通常所说的应用服务器(如WebLogic)与Tomcat有何区别。应用服务器提供更多的J2EE特征,如EJB,JMS,JAAS等,同时也支持Jsp和 Servlet。而Tomcat则功能没有那么强大,它不提供EJB等支持。但如果与JBoss(一个开源的应用服务器)集成到一块,则可以实现J2EE 的全部功能。既然应用服务器具有Tomcat的功能,那么Tomcat有没有存在的必要呢?事实上,我们的很多中小应用不需要采用EJB等技术,Jsp和 Servlet已经足够,这时如果用应用服务器就有些浪费了。而Tomcat短小精悍,配置方便,能满足我们的需求,这种情况下我们自然会选择 Tomcat.
基于Tomcat的开发其实主要是Jsp和Servlet的开发,开发Jsp和Servlet非常简单,你可以用普通的文本编辑器或者IDE,然后将其打包成WAR即可.我们这里要提到另外一个工具Ant,Ant也是Jakarta中的一个子项目,它所实现的功能类似于 Unix中的make。你需要写一个build。xml文件,然后运行Ant就可以完成xml文件中定义的工作,这个工具对于一个大的应用来说非常好,我们只需在xml中写很少的东西就可以将其编译并打包成WAR.事实上,在很多应用服务器的发布中都包含了Ant。另外,在Jsp1。2中,可以利用标签库实现Java代码与Html文件的分离,使Jsp的维护更方便.
Tomcat也可以与其它一些软件集成起来实现更多的功能。如与上面提到的JBoss集成起来开发EJB,与Cocoon(Apache的另外一个项目)集成起来开发基于Xml的应用,与OpenJMS集成起来开发JMS应用,除了我们提到的这几种,可以与Tomcat集成的软件还有很多。Tomcat确实是一个很好的工具,不仅仅因为其免费,功能强大,更因为其开放性。如今,开源软件越来越收到人们的重视,Linux就是一个成功的典型。
(2)Resin
Resin是目前最流行的支持JSP和Servlet的Web服务器之一,它被誉为JSP最快的解释器,而且,目前的Resin可以支持Sun的J2EE,这一点Tomcat暂时是做不到的。Resin对静态页处理能力相对较弱,为了更好的发挥特性,通常,它都与Apache组合使用,这样的组合可以架构出功能十分强大的站点.
(3)Weblogic Server
Weblogic是 BEA公司开发的墓前最流行的Web应用服务器之一,它拥有处理关键Web应用系统问题所需的性能,具备很高的可扩展性和可用性,而且在与BEA Weblogic Commerce Server TM配合使用时,可为部署适应性个性化的电子商务应用系统所需的多种特色和优势:
(1) 领先的标准
全面支持EJB、JSB、JMS、JDBC、XML、和WML。
(2) 无限的可扩展性
包括客户机的连接共享,资源Pooling以及动态网页和EJB组建群集.
(3) 部署灵活
Weblogic Server的特点是与领先的数据库、操作系统和Web服务器集成。
在本次设计中,选择使用的是Tomcat服务器。
2.2。4 连接数据库与JavaScript
JDBC(Java DataBase Connectivity)是sun公司制定的Java链接数据库技术。在安装好数据库后JSP并不能直接与数据库连接,这里选择利用第三方JDBC驱动程序连接数据库。在项目开发中,如果频繁在JSP页面中使用数据库连接函数,释放函数进行操作的话,势必会非常麻烦,而且代码的冗余量也很大,页面很多的时候维护也会非常麻烦,页面上到处都是数据库连接和释放代码.因此,可以利用公共数据库访问连接JavaBean的开发。通过将数据库连接函数代码,释放函数代码等封装在JavaBean中,可以减少非常多的代码编程工作,提高代码可维护性。
本网站采用hibernate与数据库的连接。Hibernate 是一个开放源代码的对象关系映射框架,它对 JDBC 进行了轻量级的对象封装,使 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。它不仅提供了从 Java 类到数据表之间的映射,也提供了数据查询和恢复机制。相对于使用 JDBC 和 SQL 来手工操作数据库,Hibernate 可以大大减少操作数据库的工作量。 另外 Hibernate 可以利用代理模式来简化载入类的过程,这将大大减少利用 Hibernate 从数据库提取数据的代码的编写量,从而节约开发时间和开发成本 Hibernate 可以和多种Web 服务器或者应用服务器良好集成,如今已经支持几乎所有的流行的数据库服务器。
JavaScript也叫小脚本语言,是一种基于对象和事件驱动并具有安全性能的脚本语言,使用它的目的是与HTML超文本标识语言、Java 脚本语言一起实现在一个网页中链接多个对象,与网络客户交互作用,从而可以开发客户端的应用程序。它是通过嵌入或调入在标准的HTML语言中实现的.
2。2。5 CSS层
CSS层叠样式表 (Cascading Style Sheet) 是一系列格式规则,它们控制网页内容的外观。使用 CSS 可以非常灵活并更好地控制具体的页面外观,从精确的布局定位到特定的字体和样式。并能极大的方便网页制作的工作。这次设计中就学习使用了CSS层叠样式表,在HTML文文档外部将一系列CSS规则存储到一个.CSS文件中。例如创建了一个名为body的选择器。利用它来统一设计网站内网页背景及外部框架的样式。在声明中规定了页面的背景、滚动条的颜色样式等。还用。br和.wenbenkuang两个选择器确定输出文本框时的样式.由于CSS已经规定声明部分中的属性及其取值范围,所以对于我这样初学者的难点就是如何找到合适的属性来实现页面设计。
2。3 运行环境的搭建和配置
2.3。1 安装jdk1。6。0_17
安装时有两个选择安装路径的页面,路径可以随便选我们就放在C:\Java下好了。安装完毕后,设置环境变量。
(1)设置方法:我的电脑——-属性—-—高级---环境变量;
(2)在系统变量里新建两个系统变量。
一个JAVA_HOME
在变量名中输入:JAVA_HOME(注意大写)
在变量值中输入:D:\Java\jdk1.6.0_17
一个CLASS_PATH
在变量名中输入:CLASS_PATH(注意大写)
在变量值中输入:
.;D:\Java\jdk1.6.0_17\jre\lib\rt。jar;D:\Java\jdk1.6。0_17\lib\tools.jar;(★注意里面的“。"不能少,表示当前路径)
(3)新建两个系统变量后,还要在原来就有的一个系统变量PATH的变量值中追加D:\java\jdk1。6.0_17\bin;D:\java\jdk1。6。0_17\jre\bin;
这样JDK就安装好了
测试JDK安装是否成功:在开始—运行中输入(cmd)进入ms dos窗口
运行java -version 看到如图2-1界面则JDK已经安装成功。
图2-1 查看JDK版本
2。3。2 安装和配置TOMCAT6.0
(1)TOMCAT6.0的安装
(1) 安装在C:/Tomcat6。0下
安装完成后配置系统环境变量。
(2) 设置方法:我的电脑--—属性——-高级—-—环境变量;
(3) 新建一个系统环境变量
(4) 在变量名中输入:TOMCAT_HOME(注意大写)
(5) 在变量值中输入:C:\Tomcat 6。0
(6) 新建变量CATALINA_HOME:变量值为C:/Tomcat6.0
配置完毕后,打开C:/Tomcat6。0/bin/startup。bat启动服务器,打开IE在地址栏里输入http://localhost:8080页面,若能看到tomcat的默认JSP页面,则说明TOMCAT安装成功。如图2-2所示。
图 2-2 tomcat默认首页
(2)TOMCAT工作目录设置:
(1)访问TOMCAT默认的根目录是C:\Tomcat 6.0\webapps\ROOT,可直接将系统拷贝到此目录下,启动tomcat,在浏览器地址栏输入http://localhost:8080/myCircle即可访问系统。但是,这样做会使服务器变得臃肿且难管理。
(2)设置虚拟目录的方法:编辑server.xml,找到〈/Host>,在这前面加上:
<Context path="/ myCircle” docBase=”d:/myCircle " debug=”0” reloadable="true" crossContext="true"〉〈/Context〉
解释:path="/myCircle"指虚拟目录的名字,docBase=”d:/myCircle”代表虚拟目录实际指向的路径,即系统存放的路径,在浏览器地址栏输入http://localhost:8080/myCircle即可访问系统.
2。3。3 安装MySQL及相关配置
安装MySQL:安装时请注意字符集设置为utf-8,路径为d:\Program Files\MySQL
配置MySQL:一般的对MySQL的操作和使用,直接安装完成就可以了,但是,系统中使用了命令备份和还原数据库,所以要配置环境变量。变量名MYSQL_HOME,变量值为C:\Program Files\MySQL\MySQL Server 6。0\bin。
3 需求分析
3。1 引言
本网站使用Struts2+Hibernate+Ajax+J2EE技术完成的一个计算机学院的门户网站,模仿计算机学院网站(http://jsj。pzhu。)制作完成,该项目主要完成新闻动态的发布和相关文档资料的上传下载。
术语定义:
(1) Java是由Sun Microsystems公司于1995年5月推出的一种程序设计语言和该语言平台的总称.
(2) 面向对象是程序设计中采用封装、继承、抽象、多态等设计方法.
(3) servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。
(4) JSP是Java Server Pages的简写,是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。
(5) AJAX是Asynchronous JavaScript and XML的简写,异步JavaScript和XML,AJAX并非缩写词,而是由Jesse James Gaiiett创造的名词,是指一种创建交互式网页应用的网页开发技术.
(6) Struts最早是作为Apache Jakarta项目的组成部分,是目前非常流行的一种动态web开源框架技术。
(7) Hibernate是一个开放源代码的对象关系映射框架,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库.
(8) Browser/Server,浏览器/服务器,简称B/S.
(9) Client/Server,客户端/服务器,简称C/S。
3.2 任务概述
本计算机学院网站实现介绍计算机学院的概况、学院风采、师资力量等,让校外人员更加清楚的了解本学院的各种信息;在线发布新闻公告和招就信息,让大家及时知道学院的动态变化;上传下载文档资料,方便老师领导等上传学习资料和常用表格等,让学生可以随时下载文档,提高学院的办公效率。
用户特点:
(1) 校外人员:了解学院的概况、学院风采、师资力量以及学院的招生就业情况。
(2) 学院学生:经常关注学院的公告、就业信息等,下载需要的学习资料和常用表格等。
(3) 学院老师:经常关注学院的公告信息,常常有一些学习资料和表格要上传。
(4) 学院领导:经常有重要的公告信息需要通知全院的师生,需要发布公告,或者要上传文档资料或者常用表格。
(5) 管理员:有时需要更改学院的概况、风采、师资力量,发布新闻、公告和招就信息,上传学习文档和常用表格,管理用户,维护整个网站健康有序的运行.
3.3 可行性分析
可行性分析主要包括经济可行性、技术可行性和效益分析。
3.3.1 经济可行性
由于本网站是使用开源框架开发本系统,且在windows操作系统下完成本系统的开发,所以开发成本仅为作者的时间,并未投入其他物质成本。且在传统的宣传模式中,对外,学院需要印刷大量的纸质宣传材料,投入一定的人力和财力去宣传学院的各种信息政策等。这样即耗费了大量的时间,也花费了一定的教育经费。如果利用现在发达的网络,建立自己的门户网站的话,这样就能为学院节约大量的人力资源投入,可见本网站的未来前景是美好的.所以在经济方面,该网站的开发是可行的。
3.3.2 技术可行性
Struts2、Hibernate3、Ajax、JSP等技术比较成熟,常见功能可以轻易实现,且对windows系统有良好的支持,开发环境容易搭建,后期部署方便;该系统开发完成后在1024*768的浏览器下能够达到最佳的浏览效果,在其他分辨率下亦不影响系统的正常功能;另外需要浏览该系统的计算机联入Internet,而这些方面在当前条件下是完全能够实现的,所以在技术方面,该系统的技术是可行的。
3.3.3 效益分析
对于学院,需要对专业特色和学院政策的进行更好的宣传,相对于传统的宣传方式,利用本系统进行宣传更为便利,不受时间性和地域性的限制,可覆盖面更广,为学院的宣传工作节约了大量的人力、物力、财力资源。
对于教师,提供了一个上传课件、维护课程资料、设置作业的平台,操作简单,管理方便,不会造成数据丢失,课件等学习资料对学生用户开放,方便学生的自学。减轻教师教学和课程资料管理的负担。
对于学生,提供了一个学习课件的平台,大大方便了学生,降低了自主学习对时间和地域的依赖,随时随地,只要能上网就能进行自学。
3.4 功能分析
本计算机学院门户网站通过学院概况、学院风采、师资力量,向校外人员展示本计算机学院的一些基本情况,让大家对该计算机学院有一定的认识和了解;在线发布新闻公告信息和上传学习资料和常用表格,使院内的学生知道学院内的最新公告和就业信息,及时下载学习资料和常用表格等.
根据以上要求,本门户网站主要有登录验证功能、信息发布功能、上传下载功能和用户管理功能等四大模块.
(1) 登录验证功能:验证用户登录时密码是否正确,登录成功后,判断用户的角色类型。
(2) 信息发布功能:发布信息(包括标题、发布者、发布时间、发布内容),判断信息的类型(新闻、公告、招生信息、就业信息),修改信息,删除不必要的信息。
(3) 上传下载功能:上传文档(学习资料、常用表格),查看所有的文档,删除文档。
(4) 用户管理功能:添加用户并为其分配角色(老师、领导、管理员),查看所有的用户,删除个别用户.
4 总体设计
4.1 总体设计理念
本系统采用4层架构的方式进行设计与实现,主要包括:表现层、控制层、业务层、持久层。
(1) 表现层:主要负责用户交互和结果显示,交易系统和管理系统有不同的 URL 入口界面。该层业务展示主要使用JSP语言,为了加强用户体验度,使用JavaScript和Ajax异步与服务器交互,使用户“无等待"交互。该层的美工布局使用div+css方式,使界面美观舒适,便于观看与操作。
(2) 控制层:主要负责系统的访问控制、数据处理和注销,是系统的核心控制单元。控制层通过系统描述来组织工作. 该层主要使用Struts2的过滤器作为核心控制器,控制请求跳转与结果页面渲染,有些功能使用拦截器实现,这种注入的方式方便扩展,加强了代码的重用性,如权限判断等的。
(3) 业务层:实现了交易系统和管理系统的主要业务逻辑,是系统主要的运算单元。 该层主要使用service业务组件实现,即无状态JavaBean,向后台service调用持久层的dao方法操作数据库,向前台service提供接口供Struts2的action调用。
(4) 持久层:实现了静态数据和数据库数据的持久化管理,为业务层提供数据服务,是系统进行数据操作的统一界面. 该层使用Hibernate管理JavaBean,使用面向对象的方法操作数据库,为后期维护与扩展提供方便.
4.2 页面设计
本网站是计算机学院的门户网站,所以大部分的页面是介绍计算机学院的各种情况和政策等。除了主页外还有以下几个页面,如图4—2。
(1) 学院概况:介绍学院的历史发展、主要领导的信息和专业介绍,所以该页面又分成了三个三级页面,分
展开阅读全文