《Visual Basic》课程教学网站的设计与实现

获取项目源文件,技术交流与指导联系Q:1225467431

摘 要

随着Internet技术的发展,人们的学习生活已经离不开网络。未来社会人们的生活和学习将越来越依赖于数字技术的发展,越来越数字化、网络化、电子化、虚拟化。Internet的发展历程以及目前的应用状况和发展趋势,可以充分地相信网络技术将极大的改变我们的生活和工作方式,甚至社会的价值观也会发生某种变化。

本设计尝试用eclipse在网络上架构一个Visual Basic教学网站,使每一位学生不用出门进教室,在家里就能够通过上网来轻松学习。本网站系统是运用JSP技术来实现的。其主要功能有:用户管理,查看文件,分类查找,课程下载,留言板,网站管理等。论文在撰写过程中,力求将理论与实践应用相结合,对各种理论进行阐述的同时配合系统从实际应用和操作技巧上加以说明,希望能够更充分地体现到这些知识与技术在本系统中的应用与实现。

关键词: 面向对象分析与设计,JSP


Abstract

With the development of Internet technology, people's learning life has been inseparable from the network. The future society people's life and learning will be more and more dependent on the development of digital technology, more and more digital produce, network, electronic and virtualization. Because of the development of the Internet and the current application situation and development trend, we can fully believe that network technology will greatly change the way we live and work, and even social values will occur to some changes.

This design attempts to use eclipse in a Visual Basic teaching website on the Internet architecture, in order to make every student don't have to go out into the classroom, study at home can easily go by surfing on the Internet. This website system is implemented using JSP technology. Its main features are: user management, view the file, the classification search, download course, message board, site management, etc. In the process of writing papers, it strive to combining theory and practice application, elaborates the theory of various coordinate system at the same time explained from practical application and operation skill, hoping that it can more fully reflect to the knowledge and technology in the application of this system and implementation.

KEYWORD OOD, JSP

 

   

1      1

1.1网络教育的发展情况 1

1.2课程网站系统的现状 1

1.3教学网站的优势 2

1.4 任务概述 2

1.4.1visual basic教学网站教学网站》系统特点 2

2 需求分析 4

2.1 开发环境及相关技术概述 4

2.1.1 Java Web技术的介绍 4

2.1.2 Java EE的介绍 4

2.1.3 MySQL的介绍 5

2.1.4 开发环境介绍 5

2.2 系统需求分析 5

2.2.1 网站系统用例图分析 5

3 网站设计与实现 7

3.1 数据库设计 7

3.2 网站用户E-R 11

3.3 网站流程分析 12

3.4 网站功能设计 14

3.4.1 后台链接 14

3.4.2 业务逻辑设计 14

4     32

    33

参考文献 34

1     论

1.1网络教育的发展情况

计算机的出现给人类社会带来了第三次工业革命,计算机和计算机网络已经深入到了各行各业,各个领域,随着Internet[1]的不断扩大和发展,电脑网络“把每一个国家、每一个城市甚至每一个家庭连接到一起”,形成了一条“信息高速路”,就像高速公路大大提高了车辆行驶的速度一样。

信息高速公路给生活、学习和工作带来了什么影响呢?总结起来主要有三点:第一,电脑网络可以查阅信息,迅速而便捷地了解周围的世界;第二,可以跟世界各地的人随时进行交流,并建立联系;第三,可以参加网络购物、拍卖等活动。正是由于有了这么一条信息高速路,网上查询和网上购物随之有可能,因此网上商业交易也迅速地发展起来,也因此给我们的生活带来很多方便。

网络教育是基于成熟的WWW技术支持,以及完备的用户设备,而形成的一种全新的网上学习平台。其主要特点是,学生不必到教育去上课,而只需在家里进行相关操作,即可进行包括课程设置、课程下载等功能,随时随刻,想学就学,可以不受时间限制。而且,通过网上教育的推行,可使教学过程中尽可能地减少纸张的使用率,这对环境保护也是能起到良好的促进作用。

但与此同时,相关的信息数据却急剧膨胀。这些海量的、以不同形式存储的数据资料,表面上杂乱无章且缺乏组织的规整化,但事实上却包含了许多潜在的、有价值的知识和规则,如何从这些海量的数据中发现有用的知识是知识工程研究面临的新课题。 

1.2课程网站系统的现状

我国互联网行业较国外起步晚, 1994年中国获准进入互联网,并于同年完成所有中国互联网工作,次年5月,张树新创立瀛海威,这是中国第一家互联网[2]服务供应商,自此之后,在一代IT人才的推动下,中国互联网事业获得蓬勃发展。由此,中国课程网站的起步也较晚,但现在却无从得知谁是第一家课程网站了,只知道现在中国课程网站的发展十分迅速,几乎涵盖了所有包括中小学、大学及各种技能证书培训的所有课程,内容丰富而冗余,分类庞杂而紊乱,大多功能相似,内容相仿。

1.3教学网站的优势

数据库原理教学网站的最大优势不是最快,而是最多最深,它为学生提供了无限大的选择空间,通过多种媒体表现形式,使学生可以选择最适合自己的学习方式。教学网站是传统课堂的延伸和拓展,是课后学习的一个很好的平台,有着更好的学习气氛,与平常的网络学习系统相较,则又多了些针对性的纵深辅导。

Visual basic教学网站的魅力主要表现在三个方面:

1、内容丰富,学生选择学习媒体的余地大。凡是稍具规模的课程网站,一般都具有良好的网络学习界面,由于不受实物陈列空间的限制,从而可使学生更加投入地学习。

2、方便学习交流。读者可在课程网站中的留言板等功能模块,方便地与其他学友进行互动交流,而且这种交流有着不受地域限制、友善人性的特点。

3、功能齐全。在系统中,学生可进行 课程查看,课程下载,资讯查看,资源下载,留言交流,作业提交。

1.4 任务概述

1.4.1《visual basic教学网站教学网站》系统特点

(1) 完备的学习功能

    系统设计的学习功能模块,可分为课程介绍、课程下载、留言板等,操作功能健全而不冗余,简约而无遗漏。

(2) 科学的学习模式

系统采用多种学习方式,学生可结合灵活多样的高级检索,能轻松的找到适合的学习方法;通过学生意见反馈系统,通过完善的信息发布系统,学生可以及时得到网站最新动态和新闻,掌握行业动向;后台结构化管理模式,涵盖了课程管理、资源管理、留言板等,为学校的电子化管理提供了一套良好的管理模式。

(3) 人性化的操作界面

一个网站,能否吸引顾客的经常光顾,界面的美观也显得非常重要。本课程系统通过专业美工的精心打造,让课程网站的设计充分体现软件的时尚、大众化。

2 需求分析

2.1 开发环境及相关技术概述

在对系统开发本身的前景、意义分析之后,接下来就是确定开发的目标和功能需求,最后确定开发工具并运用相关的技术来开发系统。通过对自身学习的方向和认识,确定采用java EE[3]作为系统的开发平台。

2.1.1 Java Web技术的介绍

Java Web[4],是用Java技术[5]来解决相关Web[6]互联网领域的技术总和,Java在客户端的应用有Java Applet,不过应用的很少,Java在服务器端的应用非常丰富,比如Servlet、Jsp[7]和第三方框架等。Java Web框架有很多,虽然各不相同,但基本也都是遵循特定的流程:使用Servlet或者Filter拦截请求,使用MVC的设计架构,使用XML或Annotation实现配置,运用Java面相对象的特点,面相抽象实现请求和相应的流程。

目前比较流行的Java Web开发框架有:Struts[8]、Spring[9]、Hibernate[10],简称SSH框架。Struts就是比较经典的MVC框架;Spring在大部分Java EE应用中都被用来管理其他组件,它与Struts的结合应用使开发过程变得更加高效和易于管理;Hibernate是一个开源的ORM框架,它对JDBC进行了轻量级的对象封装,在Struts应用中使用Hibernate,程序员能够以多种方式更加灵活地实现数据持久化。

2.1.2 Java EE的介绍

Java EE(Java Platform,Enterprise Edition)[11]是Java平台的企业版,是一套技术架构。Java EE是J2EE版本的后续版本。Java EE技术具有J2SE[12]平台的所有功能,同时还提供对EJB、JSP、Servlet、XML等技术的支持。Java EE旨在成为一个支持企业级应用开发的体系结构,简化企业解决方案的开发、部署和管理。Java EE框架克服了传统C/S[13]模式的弊端,迎合B/S架构的潮流。

2.1.3 MySQL的介绍

MySQL[14]是瑞典MySQL AB公司开发的一个小型关系数据库管理系统。在2008年1月16日被Sun公司收购。目前MySQL 被广泛应用在Internet上的中小型网站中。由于其体积小、速度快、总体成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体成本而选择了MySQL 作为后台数据库系统。

2.1.4 开发环境介绍

(1) 硬件环境:PC机。

(2) 软件环境:eclipse、MySQL、Tomcat。

2.2 系统需求分析

Visual Basic课程教学网站[16],旨在网站上实现用户课程下载,资源下载,校园资讯浏览,交流的功能。

2.2.1 网站系统用例图分析

网站用例设计:

学生用户可以浏览校园资讯、查看课程、下载资源、留言互动、查看作业功能,如图2.1所示:

2.1 学生用户

管理员可以进入后台管理系统管理用户、管理资讯、管理课程、管理资源、管理留言板和接收作业,如图2.2所示:

 

2.2 管理员模块

3 网站设计与实现

3.1 数据库设计

本教学网站共用13张数据库表来存储数据,数据库的控制采用实体设计,将数据库中的字段与实体中的属性变量一一对应,对实体的操作将反映到数据库,从而实现数据的存储修改,数据库表格具体内容如下:

(1) 用户信息表

3-1 用户信息表

属性

类型

长度

小数点

是否为空

是否为主键

描述

id

int

11

0

用户编号

username

varchar

50

0

用户名

password

varchar

50

0

密码

authorite

varchar

50

0

角色

enable

bit

1

0

是否启用

email

varchar

50

0

电子邮件地址

(2) 课程分类信息表

3-2 分类信息表

属性

类型

长度

小数点

允许空值

是否为主键

描述

id

int

11

0

编号

name

varchar

20

0

属性名

parentId

int

11

0

父属性Id

(3)课程信息表

3-3 课程信息表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

课程编号

name

varchar

100

0

课程名

filename

varchar

40

0

文件名

status

int

11

0

显示级别

author

varchar

10

0

作者

pubtime

datetime

0

0

发布日期

flashFilename

varchar

40

0

Flash动画

school

varchar

50

0

学校

viewcount

int

11

0

点击量

menuId

int

11

0

菜单编号

filetype

int

11

0

模块

img

varchar

40

0

图像

(4) 课程的网页分布模块类表

3-4 课程的网页分布模块表

属性

类型

长度

小数点

允许空值

主键

描述

id

int

11

0

编号

name

varchar

20

0

模块名称

(5) 管理员发布作业表

3-5 管理员发布作业表

属性

类型

长度

小数点

允许空值

是否为主键

描述

id

int

11

0

编号

pubtime

datetime

0

0

发布时间

description

text

0

0

题目内容

title

text

0

0

题目名称

(6) 用户提交作业表

3-6 用户提交作业表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

name

varchar

200

0

名称

addtime

datatime

0

0

提交日期

titleId

int

11

0

题目编号

userId

int

11

0

用户编号

(7) 新闻资讯信息表

3-7 新闻资讯信息表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

content

text

0

0

资讯内容

source

varchar

20

0

来源

status

int

11

0

优先级

title

varchar

50

0

主题

author

varchar

10

0

作者

pubtime

datetime

0

0

发布时间

viewnum

int

11

0

点击量

img

varchar

50

0

图像

menuId

int

11

0

菜单Id

(8) 新闻资讯分类表

3-8 新闻资讯分类表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

name

varchar

50

0

名称

(9) 资源分类表

3-9 资源分类表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

name

varchar

50

0

资源分类的名称

(10) 资源信息表

3-10 资源信息表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

name

varchar

50

0

名称

filename

varchar

50

0

资源文件名

pubtime

datetime

0

0

上传日期

filesize

varchar

20

0

文件大小

menuId

int

11

0

菜单id

(11) 留言交流分类表

3-11 留言交流分类表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

name

varchar

50

0

名称

(12) 留言交流信息表

3-12 留言交流信息表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

title

text

0

0

主题

pubtime

datetime

0

0

发布时间

detail

text

0

0

回复信息

replynum

int

11

0

回复数量

edituser

varchar

50

0

回复用户

edittime

datetime

0

0

回复时间

mentId

int

11

0

菜单Id

userId

int

11

0

作者Id

(13) 留言回复信息表:

3-13 留言回复信息表

属性

类型

长度

小数点

允许空值

是否主键

描述

id

int

11

0

编号

content

text

0

0

内容

status

int

11

0

状态,是否禁止

pubtime

datetime

0

0

发布时间

topicId

int

11

0

主题id

userId

int

11

0

用户id

3.2 网站用户E-R图

 (1) 学生E-R图示:如图3.1所示:

3.1 学生E-R

(2) 管理员E-R图示:如图3.2所示:

3.2 管理员E-R

3.3 网站流程分析

(1) 学生

在开始首页中可登录学生用户,输入用户名与密码登录,可进入带个人状态的首页,可进行查看下载资讯、课程、资源,可发布帖子,回复帖子,可进入个人中心提交作业。如图3.3所示:

 

3.3 学生流程图

2)管理员

在首页面中登录管理员后,除可操作学生的功能外,可进入后台管理,管理用户权限,上传修改课程、资源、资讯,可管理交流中心帖子内容。如图3.4所示:

 

3.4 管理员流程图

3.4 网站功能设计

3.4.1 后台链接

本教学网站采用hibernate构建数据结构,采用实体技术,使实体类中的变量与数据库中的字段一一对应,对变量的删改可实现数据库的操作。数据库的xml配置截图如下3.5所示:

<bean id="dataSource"

class="org.apache.commons.dbcp.BasicDataSource">

<property name="driverClassName" value="com.mysql.jdbc.Driver">

</property>

<property name="url">

<value>jdbc:mysql://localhost:3306/classnet?useUnicode=true&characterEncoding=UTF-8</value>

</property>

<property name="username" value="root"></property>

<property name="password" value="123456"></property>

</bean>

3.5 applicationcontext.xml数据库配置

 

3.4.2 业务逻辑设计

(1)实体类

采用hibernate的orm映射可持久化设计,实体类与数据库表一一对应,实体如下图3.6所示:

3.6 实体

(2)表单类

表单类用于set设置和get取出网站中的表单,如图3.7所示:

 

3.7 表单

(3)功能类仅有一个,就是用户信息的存储和跟踪。如图3.8所示:

3.8 用户功能

 

它使用了一spring框架中的acegisecurity用于跟踪完善用户信息。如图3.9所示:

3.9 springacegi

(4)文件复制拆分新建的实现

FileHelper.java类中实现路径查找和添加,FileIo实现删除功能,MKDir类实现创建文件名和路径,Uploa实现上传功能。如图3.10所示:

3.10 文件管理

(5)有关时间和image的设计:如图3.11所示:

3.11 图形设计

(6)菜单的初始化、image的显示实现、首页的初始化变量的设计、用户的核实登录、上传功能的设计如下3.12所示:

3.12 用户功能设计

(7)管理员后台的功能设计:如图3.13所示:

3.13 管理员后台设计

(8)课程的设计:如图3.14所示:

3.14 课程设计

(9)用户功能的实现:如图3.15所示:

3.15 用户功能设计

(10)新闻功能的实现:

新闻功能实现类有NewsIndexActionNewsMenuActionSeeNewsActionNewsIndexAction实现新闻首页的对象设计,NewsMenuAction实现进入News导航的页面菜单设计,SeeNewsAction实现进入新闻内容的对象设计。如图3.16所示:

3.16 新闻功能设计

(11)资源下载的设计:

资源模块有课程类的设计,在资源页面显示推荐课程和推荐新闻资讯,除此,设计和是实现了资源分类,资源类的设计和实现,可在资源页浏览资源分类和下载资源。如图3.17所示:

3.17 资源功能设计

(11)论坛功能设计:

论坛功能的设计分为菜单功能,屏蔽回复功能,回复功能和主题话题功能,具体实现如下。如图3.18所示:

3.18 论坛功能设计

(12)接口设计与实现

接口设计主要实现数据的传输,实现对象的存储,修改和删除。接口实现用以实现接口中的方法,完善接口功能。接口中用到了public interface Serializable类通过实现 java.io.Serializable 接口以启用其序列化功能。未实现此接口的类将无法使其任何状态序列化或反序列化。可序列化类的所有子类型本身都是可序列化的。序列化接口没有方法或字段,仅用于标识可序列化的语义DetachedCriteriaweb层,程序员使用DetachedCriteria来构造查询条件,然后将这个DetachedCriteria为方法调用参数传递给业务层对象。而业务层对象获得DetachedCriteria之后,可以在session围内直接构造Criteria进行查询接口实现了Serializable接口与hibernate3DetachedCriteria功能。如图3.19所示:

3.19 接口设计

(13)一些配置文件的设计

配置文件中,有配置程序上下文数据资源,服务功能配置,权限配置和action类映射关系的配置,系统配置。如图3.20所示:

3.20 配置文件

applicationContext-acegi1.xml用于配置权限,匿名登录,cookie等。

applicationContext-acton.xml用于设置ApplicationResources.properties程序配置、前后台struts的action依赖注入。

applicationContext.xml用于数据库连接注入,回话工厂、事务管理、过滤器和类工厂的设计。applicationContext-service.xml用于将接口类绑定用户。

(14)样式表的设计:如图3.21所示:

3.21 样式表

(15)fckeditor编辑器的使用:如图3.22所示:

3.22 编辑器

(16)网站首页:

3.23 网站首页

首页包括用户登录,学习资源栏,如上图3.23所示:。

(17)新闻资讯:如图3.24所示:

3.24 新闻资讯

(18)课程中心:如图3.25所示:

3.25 课程中心

(19)资源下载:如图3.26所示:

3.26 资源下载

(20)互动交流:如图3.27所示:

3.27 互动交流

(21)个人中心:如图3.28所示:

3.28 个人中心设计

(22)管理员功能:管理员功能仅介绍用户管理功能,如图3.29所示:

3.29后台功能设计


4 结   

本教学网站并不实用,功能不完善或没有实现,在此次网站设计中,受益匪浅,不管在大的框架,spring的依赖注入控制反转,struts的action,hibernate的orm持久化设计,小到servlet的发送请求和回复,这些插件和功能使开发网站变得更加简单。更熟练掌握了过滤器的配置,访问权限配置。 

  

历时将近几个月终于将这篇论文写完,在论文的写作过程中我遇到了很多困难和障碍,在同学和指导老师曾莉的帮助下,顺利的完成了任务。曾老师作为一名优秀的科教工作者,经验丰富,具有丰富的专业知识和实践经验,在整个论文的写作过程中,敦敦教导,不孜不倦,严格要求,在曾老师的帮助下,使我在这一段宝贵的时光中,既增长知识,又锻炼了心态,又培养了实验习惯和科研精神。为此,向导师曾莉老师致以最诚挚的谢意!

此外,还要感谢信息工程学院的其他老师,谢谢他们在论文答辩中给出的宝贵评价与指导。

参考文献

[1] 甘勇.黄敏,张志峰.JSP程序设计教程[M].北京:清华大学出版社,2010.

[2] 李咏梅,余元辉.JSP应用教程[M].北京:清华大学出版社,2011

[3] 范芸,范慧霞.JSP动态网站开发基础与上机指导[M].北京:清华大学出版社,2010

[4] 林振荣,徐苏.JSP程序设计[M].北京:清华大学出版社,2010

[5] 冯曼菲,等.EJB JPA数据库持久层开发实战详解[M].北京:电子工业出版社,2009.

[6] 杨树林,胡洁萍.Java最新实用案例教程[M].北京:清华大学出版社,2010.

[7] 郭锋.Spring从入门到精通[M].北京:清华大学出版社,2010.

[8] 梁立新.项目实战精解:基于Sturts-Spring-Hibernate的Java应用开发[M].北京:电子工业出版社,2010

[9] 李刚.Struts2权威指南[M].北京:电子工业出版社,2011

[10] 孟劼.Spring----Java轻量级架构开发实践[M].北京:人民邮电出版社,2010

[11] Ralph Morelli.翟中,等译.Java面向对象程序设计[M].3版.北京:机械工业出版社,2010.

[12] Bruce Eckel.Java编程思想[M].陈昊鹏,等译.3版.北京:机械工业出版社,2010

[13] 尤众喜. 教学网站的建设和基于网络的教学功能的实现[J].电化教育研究.2010(63).

[14] 黄小冬,陈薇. 教育教学数据Open API设计与实现[J]. 软件导刊,2015,05:115-118.

[15] 刘德山,孙丽,范亚惠. 面向课群的教学资源管理系统设计与实现[J]. 软件导刊,2015,05:168-170.

[16] 张向梨,王海燕,梁敏,张亚娇. 基于软件工程原则开发Moodle平台网络课程的方法[J]. 中国医学教育技术,2015,02:167-170.

[17] 温都苏. 信息技术课程的教学网站设计思路[J]. 中小学电教,2015,04:22.

猜你喜欢

转载自www.cnblogs.com/dejyyhg/p/12657426.html
今日推荐