数据库课程设计.docx

上传人:b****4 文档编号:5093586 上传时间:2022-12-13 格式:DOCX 页数:29 大小:312.72KB
下载 相关 举报
数据库课程设计.docx_第1页
第1页 / 共29页
数据库课程设计.docx_第2页
第2页 / 共29页
数据库课程设计.docx_第3页
第3页 / 共29页
数据库课程设计.docx_第4页
第4页 / 共29页
数据库课程设计.docx_第5页
第5页 / 共29页
点击查看更多>>
下载资源
资源描述

数据库课程设计.docx

《数据库课程设计.docx》由会员分享,可在线阅读,更多相关《数据库课程设计.docx(29页珍藏版)》请在冰豆网上搜索。

数据库课程设计.docx

数据库课程设计

目录

1.前言…………………………………………………………………………………………2

1.1项目研究的意义………………………………………………………………………3

1.2系统的设计思路………………………………………………………………………3

2.系统分析……………………………………………………………………………………3

2.1系统的可行性分析……………………………………………………………………3

2.2系统的需求分析………………………………………………………………………4

2.3系统的业务流程分析…………………………………………………………………4

2.4系统的功能结构分析…………………………………………………………………5

3.系统设计……………………………………………………………………………………6

3.1关系型数据库技术……………………………………………………………………6

3.2概念设计………………………………………………………………………………7

3.3逻辑设计………………………………………………………………………………8

3.3.1关系模式……………………………………………………………………………8

3.3.2数据库表逻辑结构设计……………………………………………………………8

3.3.3数据库基本表的建立………………………………………………………………10

3.3.4数据库结构优化——关系规范化………………………………………………11

4.系统实施环境………………………………………………………………………………11

4.1系统的开发环境………………………………………………………………………11

4.1.1技术平台JAVASE……………………………………………………………………11

4.1.2应用Sqlserver2000数据库………………………………………………………11

4.1.3操作和配置Tomcat6.0服务器……………………………………………………11

4.1.4安装Eclipse集成开发环境………………………………………………………12

4.1.5应用MVC开发模式…………………………………………………………………12

5.运行界面展示………………………………………………………………………………12

6.课程设计总结………………………………………………………………………………14

7.附录部分主要代码…………………………………………………………………………16

 

1前言

随着网络信息化的飞速发展,人们的生活学习已经离不开网络。

当现代社会逐渐变为具有高度的相互依赖的巨大网络时,我们所生活的世界无法不变成一个被计算机网络紧密联结起来的世界。

博客(Blog)的全名应该是Weblog,中文意思是“网络日志”,而博客(Blogger)就是写Blog的人。

从理解上讲,博客是“一种表达个人思想、网络连接、内容,按照时间顺序排列,并且不断更新的出版方式。

”Blog是继Email、BBS、IM之后出现的第四种全新的网络交流方式。

你可以利用Blog轻松地表达自己的想法,发布自己的心得,大到你对时事新闻、国家大事的个人看法,小到你对一日三餐、服饰打扮的精心料理。

网络社会化最大的特征就是个人成为互联网的主体和主人。

具体地说,未来每一个人,除了在现实生活中的自己外,在网络上也有一个自己的代表,在网络上能够体现你的个性、你的思想、你的各种信息,同时他人也可以随时与网络上的你沟通交流。

每一个人成为互联网的一个“节点”。

因此,网络社会化的核心就是个人网络化。

那么,如何才能实现个人网络化?

博客(blog)的兴起开始昭示了发展方向。

博客的根本意义在于,它是互联网上赋予个人以力量的工具。

博客让每个个人都可以成为互联网中自主的主体,表达自己并且与网络世界建立全面的交流沟通。

因此,未来的博客将是集成各种网络应用的中心:

包括电子邮件、即时短讯等,而且还可以通过各种终端无所不在地进行博客。

个人博客就是个人在网上的全面形象的代表,是以个人为基础的互联网各项应用的“枢纽”。

简言之,博客就是以网络作为载体,简易迅速便捷地发布个人心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合型平台。

 

1.1项目研究的意义

随着Tnternet的广发应用,动态网页技术也应运而生。

个人要跟上时代的发展,也必须拥有自己的个人网站。

博客系统主要为用户提供发表文章、浏览文章等功能,用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流。

博客系统主要实现了文章管理的数字化、信息化、智能化,是打破传统报刊、杂志发表文章方式的新尝试。

本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;该系统的主要功能实现了对博客的增、删、改、查的管理,具体介绍了博文的发表和管理、博文类别和类别的管理、博文评论和评论管理、用户登录和注册管理等模块。

个人博客是博客的一种。

自主建立网站的博客,可以记录个人生活的点滴,传达个人自由的思想,抒发分享个人情绪,分享交流知识技术以及交友等多方面的需求。

1.2系统的设计思路

现有的一些网上测试软件存在不少弊端,如结构设计不合理,功能简单罗列,缺乏对学习活动和教学管理的有效支持等。

像现在不少网站所提供的测试系统必须先要进行客户端的下载和安装,另外,结构设计也较为简单。

为了充分发挥网络的优势,本系统的设计,一方面强调用户之间的交流,另一方面个人对博客的管理。

博主通过博文的管理与其他用户进行交流。

基于上述考虑,用MVC模式来设计个人博客管理系统比较合适,服务器端我们采用SQLServer数据库系统和JAVA组件来构成博客管理系统。

2系统分析

2.1系统的可行性分析

计算机网络技术的不断发展和我国网络设施的不断完善,为建立网上测试系统提供了很好的基础。

个人博客系统的开发基于MVC模式,主要包括前端应用程序的开发以及后台数据库的建立和维护两个方面。

对于前者要求应具备功能完备、易于使用等特点,而对于后者则要求能建立数据一致性和完整性强、数据安全性好的库。

基于以上要求,本系统拟采用java和SQLserver2000分别作为前端和后端的开发工具。

(1)经济方面:

本系统对系统开发者来说并不需要太高的成本支出,而且开发周期不需要太长,节省了人力、物力、财力资源,所以本系统在经济上是可行的。

(2)技术方面:

在软件方面,本系统前台网页设计使用的是DreamweaverMX,而数据库系统是SQL2000。

SQLServer2000是目前比较流行的数据库管理系统,其版本的客户端软件可以在MicrosoftWindowsNT、MicrosoftWindows2000和MicrosoftWindowXP等操作系统上运行,所以其具有很强的可伸缩性,具有很高的可靠性、可用性以及安全性。

通过分析,在软硬件方面现有工具与环境完全可以实现系统的开发,因此具有技术上的可行性。

(3)管理方面:

系统的开发主要是为了方便个人信息的管理,补充现在传统管理方式的不足,因此具备了管理上的可行性。

(4)操作方面:

该个人博客具备良好的用户界面,使用方便,易于维护,操作简单易于被用户接受,用户只需熟练操作计算机,并对此系统的使用做简单的了解,即可方便使用,而且使用此系统可以大大减少管理人员的负担。

因此,从操作方面来看,此系统的开发是可行的。

综上所述,本系统开发目标已经明确,在技术和经济等方面具备可行性,并且投入少、见效快,因此系统的开发是完全可行的。

经过以上的一系列分析,本系统的设计与实现都是可行的。

2.2系统的需求分析

我们需要设计和完成这样的一个个人博客管理系统:

(1)博主通过注册输入密码或者对密码进行修改后进入个人博客;

(2)能够为博主随时随地的在网上更新文章和管理博文;

(3)能够在任何时间接受其他人对博文的评论;

(4)能够对博文进行分类管理以及添加新的分类:

简而言之,它必须使整个博客管理系统变得更为简单、安全、科学、合理和高效。

系统目标是给用户提供一个交流和沟通的平台。

2.3系统的业务流程分析

业务流程分析是在对系统的组织结构和功能进行分析时,需从一个实际业务流程的角度将系统调查中有关该业务流程的资料都串起来作进一步的分析。

业务流程分析可以帮助我们了解该业务的具体处理过程,发现和处理系统调查工作中的错误和疏漏,从而优化业务处理流程。

业务流程图表示业务的流向,它是从业务入手,从与系统运行直接有关的机构开始,进行业务调查而形成的。

它是数据流程图进行数据抽象的前提。

本系统的业务流程如图:

后台博主(管理)

前台用户

计算机

浏览博文

发表博文

博文入库

保存到

数据库

管理博文

评论博文

添加分类

分类管理

评论管理

保存到

数据库

修改密码

 

图2.1系统业务流程图

2.4系统的功能结构分析

根据博客的特点,将个人博客管理系统分为两大部分,即前台博客页面、后台博客管理部分,前台页面包括对博文内容的浏览和评论;后台管理部分包括发表博文、对博文的修改和删除、对博文分类的增添和删除、对评论的修改和删除以及修改密码等操作。

一般用户只需在客户端通过浏览器进行操作,能完成其模块提供的各种功能,后台由博主进行系统登录后进入后台进行对博文以及评论的管理。

系统的功能结构图2-2所示:

图2.2系统功能图

用户登录功能由网上测试系统的主界面提供。

博主通过使用用户名登录,密码正确后进入网站中的博客后台管理主界面;普通用户通过网站进入网站到的博客前台页面。

(1)前台管理。

该部分的功能主要是提供其他用户浏览博主的文章并进行评论。

(2)后台管理。

该部分是系统的核心,主要包括博文管理、发博文、分类管理、添加分类、评论管理以及修改密码。

博文管理是指博主对个人的博文进行删除和修改操作,发博文是通过固定的文章形式发表文章,分类管理是对博文根据其内容进行分类,方便读者按照兴趣进行有选择的阅读,添加分类是当博主有其它不存在的分类时进行添加操作,评论管理主要针对访客对博文的评论进行管理,可以删除和修改评论的内容,修改密码主要出于安全考虑,及时更新密码。

3系统设计

3.1关系型数据库技术

数据库是指存放在计算机内、有组织的、可共享的数据集合;对数据库的管理是通过数据库管理系统(DBMS)实现的。

数据库技术使准确、批量、高效的管理数据成为可能。

随着管理需求的提高,数据库技术也得到了飞速发展,应用较为广泛的是分布式数据库和数据仓库技术。

使用数据库可以带来许多好处:

如减少了数据的冗余度,从而大大地节省了数据的存储空间,实现数据资源的充分共享等。

近年来,推出的计算机关系数据库管理系统,还具有操作直观,使用灵活、编程方便,功能强大,环境适应广泛,数据处理能力极强等诸多优点。

关系型数据库[7]以行和列的形式存储数据,以便于用户理解。

这一系列的行和列被称为表,一组表组成了数据库。

用户用查询(Query)来检索数据库中的数据。

一个Query是一个用于指定数据库中行和列的SELECT语句。

关系型数据库通常包含的组件有客户端应用程序(Client)、数据库服务器(Server)和数据库(Database)。

SQL是Client端和Server端的桥梁,Client用SQL来向Server端发送请求,Server返回Client端要求的结果。

现在流行的大型关系型数据库有IBMDB2、IBMUDB、Oracle、SQLServer、SyBase、Informix等。

3.2概念设计

ER图是用来描述某一组织(单位)的概念模型,提供了表示实体、属性和联系的方法。

构成ER图的基本要素是实体、属性和关系。

实体是指客观存在并可相互区分的事特;属性指指实体所具有的每一个特性。

本系统的E-R模型如图3.1所示:

 

图3.1系统的E-R模型

3.3逻辑设计

3.3.1关系模式

个人博客系统的关系模式如下:

用户(用户标识,用户名,用户密码)

博文(博文标识,分类标识,博文标题,博文内容,发表时间)

类别(分类标识,分类名称,分类显示级别)

评论(评论标识,博文标识,评论人,评论内容,评论时间)

3.3.2数据库表逻辑结构设计

数据库的设计在一个管理系统中起着重要的作用,一个设计合理、结构清晰的数据库能减少数据冗余,提高查询速度,方便更新修改,可以减轻程序的负担,提高程序的执行效率和稳定性根据网络课程的要求,本系统主要由以下几个表组成:

blog表、category表、comment表、user表等。

blog表用于保存博文的基本信息:

字段包括博文编号、博文标题、博文内容以及分类标示和发表时间;category表用于保存博文的分类,字段包括分类标识、分类名称以及显示级别。

comment表用于保存管理评论信息,字段包括评论标识、博文标识、评论人名称以及评论内容,其中博文标识是外码。

user表用于管理登陆信息,字段包括登录人名称以及登陆密码。

详细的数据库设计见下表3.1至表3.8:

注:

☆表示主码;◇表示外码

表3.2blog表

字段名

类型

是否可空

字段说明

☆id

int

编号

◇category_id

int

类别的id值

title

varchar(400)

博文标题

cotent

varchar(4000)

博文内容

Created_time

datetime

创建时间

表3.3category表

字段名

类型

是否可空

字段说明

☆id

int

编号

name

varchar(20)

分类名称

level

int

显示的级别

表3.4comment表

字段名

类型

是否可空

字段说明

☆id

int

编号

◇blog_id

int

博文编号

username

varchar(200)

评论人

conent

varchar(1000)

评论内容

createtime

Datetime(8)

评论时间

表3.5user表

字段名

类型

是否可空

字段说明

☆id

int

用户编号

uername

varchar(200)

评论人的名字

password

Varchar(200)

登录密码

3.3.3数据库基本表的建立

 

3-6.blog表的建立

3-7.category表的建立

3.8comment表的建立

3.9user表的建立

3.3.4数据库结构优化——关系规范化

在关系数据库中,对关系模式的基本要求是满足第一范式(1NF)。

但是,有些关系模式存在插入、删除异常、修改复杂、数据冗余等缺点。

所以,我们有必要使关系规范化以方便数据库的操作。

规范化的基本思想是逐步消除数据依赖中不适合的部分,是模式中的各关系模式达到某种程度的“分离”,即“一事一地”的模式设计原则。

因此,所谓规范化实质上是概念的单一化。

关系模式的规范化过程是通过对关系模式的分解来实现的。

通过对本系统关系模式中存在的传递依赖,所以本系统的关系模式属于第三范式(3NF)。

4系统实施

4.1系统的开发环境

4.1.1技术平台JAVASE

Java技术具有卓越的通用性、高效性、平台移植性和安全性,JavaSE是Java平台标准版的简称(JavaPlatform,StandardEdition),用于开发和部署桌面、服务器以及嵌入设备和实时环境中的Java应用程序。

JavaSE包括用于开发JavaWeb服务的类库,同时,JavaSE为JavaEE提供了基础。

从1.2版开始,Java作为一个编程平台逐渐得到了人们的认可,而不再只是一个浏览器扩展,Sun开始提供更加灵活的安全功能,首先是可配置安全策略的概念。

Java编程语言的风格十分接近C、C++语言。

Java是一个纯的面向对象的程序设计语言,它继承了C++语言面向对象技术的核心,Java舍弃了C++语言中容易引起错误的指针、多重继承等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。

4.1.2应用Sqlserver2000数据库及相关工具创建数据库

SQLServer2000是Microsoft公司推出的SQLServer数据库管理系统的一个版本。

该版本继承了SQLServer7.0版本的优点同时又比它增加了许多更先进的功能,具有使用方便,可伸缩性好与相关软件集成程度高等优点,可跨越从运行MicrosoftWindows98的膝上型电脑到运行MicrosoftWindows2000的大型多处理器的服务器等多种平台使用。

4.1.3操作和配置Tomcat6.0服务器

Tomcat是Apache软件基金会的Jakarta项目中的一个核心项目,由Apache、Sun和其他一些公司及个人共同开发而成。

由于有了Sun的参与和支持,最新的Servlet和JSP规范总是能在Tomcat中得到体现,因为Tomcat技术先进、性能稳定,而且免费,因而深受Java爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的Web应用服务器。

4.1.4安装Eclipse集成开发环境,并在Eclipse上安装Myeclipse插件

Eclipse是一种基于Java的可扩展开源开发平台。

就其自身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。

Eclipse附带了一个标准的插件集,包括为人熟知的Java开发工具。

4.1.5应用MVC开发模式

模型-视图-控制器(Model-View-Controller,MVC)模式就是为那些需要为同样的数据提供多个视图的应用程序而设计的。

它很好地实现了数据层与表示层的分离,特别适用于开发与用户图形界面有关的应用程序。

控制器用来处理用户命令以及程序事件,模型用来维护数据并提供数据访问方法;视图用于数据的显示。

5.运行界面展示

博客前台页面截图:

博客后台管理:

通过用户名登陆,密码正确后进入后台管理界面。

博客后台管理主页面:

 

博文管理页面:

修改博文页面:

博文管理删除操作:

6.总结

通过最近一段时间的学习,基于JavaWeb技术和SQL数据库技术的个人博客开发系统已经顺利完成。

在整个系统的设计过程中,从需求分析,概要设计到详细设计再到软件测试,我学到了很多课本上学不到的专业知识,摆脱了课本纯粹理论知识的束缚,将数据库等知识运用到实际操作中,锻炼了从事项目系统开发的能力,为今后在工作和学习中更好地利用JSP技术开发网页打下了良好的基础。

在不断地修正错误,调试程序,配置运行环境的过程中,也遇到了很多问题,通过网上查询,以及与老师同学交流,系统功能也在不断完善。

但由于时间和技术问题,整个个人博客管理系统仍然存在一些不足,该博客系统在界面美化、权限控制、程序优化以及自定义扩展功能方面还需进一步完善。

本系统最大的特点是其功能简洁明了、易于使用,属于单一型博客系统,而且界面友好,操作方便,即使是不懂数据库以及计算机系统的人员也可以熟练使用。

通过开发整个博客管理系统,我的编程水平有了较大的提高,巩固了我对SQL2000、eclipse的认识和提高。

另外,我也意识到团队合作的重要性。

此次系统开发由我和另一位同学共同开发完成,通过交流和合作最终完成了这次对个人博客系统的开发,也相互促进了很多。

限于一些所掌握知识和时间的原因,还有很多想法无法付诸于实施,希望在以后能够对博客做更深一步的调研,在原有的系统的基础上不断添加新的功能,最终能够开发出一套完整的博客项目管理系统。

 

7.附录部分主要代码

<%@pagelanguage="java"contentType="text/html;charset=UTF-8"%>

<%@pageimport="java.util.List"%>

<%@pageimport="java.text.SimpleDateFormat"%>

<%@pageimport="com.sdjzu.domain.*"%>

DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http:

//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

//www.w3.org/1999/xhtml">

博客前台页面

博客前台页面

--listblogbegin-->

<%Listlist=(List)request.getAttribute("blogs");

for(inti=0;i

Blogblog=(Blog)list.get(i);

SimpleDateFormatsdf=newSimpleDateFormat("yyyy年MM月dd日");

Stringdate=sdf.format(blog.getCreateTime());

sdf=newSimpleDateFormat("HH:

mm:

ss");

Stringtime=sdf.format(blog.getCreateTime());

%>

<%=date%>

method=get&id=<%=blog.getId()%>"target="_blank"><%=blog.getTitle()%>

<%

Stringsource=blog.getContent();

intlength=100;

if(source.length()<100){

length=source.length();

}

StringnewString=source.substring(0,length);

out.p

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 简历

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1