JavaWeb_gy博客网站_数据库实现

3.1数据库需求分析

  技术博客网站的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输入和输出。收集基本数据,数据结构以及数据处理的流程,组成一份详尽的数据库。针对本学院的毕业论文完成的流程,通过对技术博客网站设计和数据流程分析,设计如下所示的数据项和数据结构。

  1.用户数据实体:ID(id)、用户名(create_time)、创建时间(image)、头像(password)、密码(personal_sign)、个人签名(username)

  2.游客数据实体:游客ID(id)、头像(image)、账号(password)、密码(username)

  3.相册数据实体:ID(id)、内容(content)、相册封面(cover)、创建时间(create_time)、图像编号(image_number)、标题(title)

  4.博客数据实体:ID(id)、评论编号(comment_number)、内容(content)、博客封面(cover)、创建时间(create_time)、图像(image)、小内容(little_content)、小标题(little_title)、标题(title)、浏览数(view_number)、情绪ID(mood_id)

  5.图片数据实体:ID(id)、图像(image)、相册ID(album_id)

  6.消息数据实体:消息ID(id)、内容(content)、创建时间(create_time)、游客ID(visitor_id)

  7.心情数据实体:ID(id)、文本(content)、创建时间(create_time)、图形(image)、标题(title)、用户ID(user_id)

以上的实体都是基本的数据实体,由于操作模块的名称对应该权限,在程序初始化时这些数据都应该添加,教师论文管理系统的目的进行论文管理,因此还要包括如下的几个数据实体:

  8.游客第三方登陆数据实体:用户ID(userId)、提供者ID(providerId)、提供程序用户ID(providerUserId)、等级(rank)、显示名称(displayName)、配置文件URL(profileUrl)、头像URL(imageUrl)、访问令牌(accessToken)、秘密(secret)、刷新令牌(refreshToken)、过期时间(expireTime)

  9.相册评论实体:相册评论实体(id)、相册文本(content)、创建时间(create_time)、相册(album_id)、游客ID(visitor_id)

  10.博客目录实体:博客ID(blog_id)、目录ID(catalog_id)

  11.博客评论实体: ID(id)、文本内容(content)、创建时间(create_time)、博客ID(blog_id)、游客ID(visitor_id)

  12.目录实体:ID(id)、目录(catalog)

3.2数据库概念结构设计

  根据需求分析的数据项和数据结构,可以规划出用户实体、博客实体、评论实体等各实体的E_R图。具体如下图所示。

   

                    图3-1用户实体E-R图

  

                    图3-3相册实体E-R图

   

                    图3-4博客实体E-R图

   

                    图3-5图片实体E-R图

   

                    图3-6消息实体E-R图

   

                    图3-7心情实体E-R图

   

                    图3-8游客第三方登陆数据实体E-R图

  

                    图3-9相册数据实体E-R图

  

                    图3-10博客目录数据实体E-R图

  

                    图3-11博客评论实体E-R图

  

                    图3-12目录实体E-R图

  

3.3物理结构设计

  在这个数据库管理系统中要建立12张数据表,下面将主要介绍关键数据表的数据库设计的详细及存储后台用户基本信息的数据库表的字段说明。

数据表的说明

  (1) 相册表(Album):用于,如表3-1。

  (2) 相册评论表(Album_comment):用于,如表3-2。

  (3) 博客表(Blog):用于,如表3-3。

  (4) 博客目录表(Blog_catalog):用于,如表3-4。

  (5) 博客评论表(Blog_comment):用于,如表3-5。

  (6) 目录表(Catalog):用于,如表3-6。

  (7) 图片表(Image):用于,如表3-7。

  (8) 消息表(Message):用于,如表3-8。

  (9) 心情表(Mood):用于,如表3-9

  (10)用户表(User):用于,如表3-10。

  (11)游客第三方用户连接表(User connection):用于,如表3-11。

  (12)游客表(Visitor):用于,如表3-12

 

数据表的详细设计

  (1) 相册表(album)的设计如表3-1所示:

表3-1相册表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


content


VARCHAR(255)


文本内容


3


cover


VARCHAR(255)


相册封面


4


create_time


VARCHAR(255)


创建时间


5


image_number


BIGINT(20)


图片编号


6


title


VARCHAR(255)


相册标题

 

(2) 相册评论表(album_comment)的设计如表3-2所示:    

表3-2相册评论表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


content


VARCHAR(255)


文本内容


3


create_time


VARCHAR(255)


创建时间


4


album_id


BIGINT(20)


相册ID


5


visitor_id


BIGINT(20)


游客ID

(3) 博客表(blog)的设计如表3-3所示:

表3-3博客表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


comment_number


BIGINT(20)


评论编号


3


content


VARCHAR(255)


本文内容


4


cover


VARCHAR(255)


博客封面


5


create_time


VARCHAR(255)


创建时间


6


image


VARCHAR(255)


图片


7


little_content


VARCHAR(255)


小内容


8


little_title


VARCHAR(255)


小标题


9


title


VARCHAR(255)


标题


10


view_number


BIGINT(20)


浏览数


11


mood_id


BIGINT(20)


心情ID

(4) 博客目录表(blog_catalog)的设计如表3-4所示:

表3-4博客目录表


编号


字段名称


字段类型


字段说明


备  注


1


blog_id


BIGINT(20)


博客ID


主键


2


catalog_id


BIGINT(20)


目录ID

(5) 博客评论表(blog_comment)的设计如表3-5所示:

表3-4博客评论表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


content


VARCHAR(255)


文本内容


3


create_time


VARCHAR(255)


创建时间


4


blog_id


BIGINT(20)


博客ID


5


visitor_id


BIGINT(20)


游客ID

(6) 目录表(catalog)的设计如表3-6所示:

表3-4目录表


编号


字段名称


字段类型


字段说明


备  注


1


blog_id


BIGINT(20)


博客ID


主键


2


catalog_id


BIGINT(20)


评论ID

(7) 图片表(image)的设计如表3-7所示:

表3-7图片表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


image


VARCHAR(255)


评论编号


3


album_id


BIGINT(20)


相册ID

(8) 消息表(message)的设计如表3-8所示:

表3-8消息表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


content


VARCHAR(255)


评论编号


3


create_time


VARCHAR(255)


创建时间


4


visitor_id


BIGINT(20)


游客ID

(9) 心情表(mood)的设计如表3-9所示:

表3-9心情表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


content


VARCHAR(255)


文本内容


3


create_time


VARCHAR(255)


创建时间


4


image


VARCHAR(255)


图片


5


title


VARCHAR(255)


标题


6


user_id


BIGINT(20)


用户ID

(10)用户表(user)的设计如表3-10所示:

表3-10用户表


编号


字段名称


字段类型


字段说明


备  注


1


id


BIGINT(20)


ID


主键


2


create_time


VARCHAR(255)


评论编号


3


image


VARCHAR(255)


图片


4


password


VARCHAR(255)


密码


5


personal_sign


VARCHAR(255)


个人签名


6


username


VARCHAR(255)


用户名

(11)游客第三方登陆表(userconnection)的设计如表3-11所示。

表3-11游客第三方登陆


编号


字段名称


字段类型


字段说明


备  注


1


userId


BIGINT(20)


ID


主键


2


providerId


VARCHAR(255)


评论编号


3


providerUserId


VARCHAR(255)


提供程序用户ID


4


rank


INT(11)


等级


5


displayName


VARCHAR(255)


显示名称


6


profileUrl


VARCHAR(255)


简介


7


imageUrl


VARCHAR(255)


图片地址


8


accessToken


VARCHAR(255)


访问令牌


9


secret


VARCHAR(255)


秘密


10


refreshToken


VARCHAR(255)


刷新令牌


11


expireTime


BIGINT(20)


过期时间

(12)游客表(visitor)的设计如表3-12所示。

表3-12游客表


编号


字段名称


字段类型


字段说明


备  注


1


id


VARCHAR(255)


ID


主键


2


image


VARCHAR(255)


图片


3


password


VARCHAR(255)


密码


4


username


BIGINT(20)


用户名

3.4创建表脚本文件

  根据数据库的字段设计,编写的创建数据表的语句详见附录。

3.5表之间的关系

   

附录A 代码

创建表的脚本语句

(1)album 相册数据表

CREATE TABLE `album` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL,

  `cover` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `image_number` bigint(20) DEFAULT NULL,

  `title` varchar(255) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(2)album_comment 相册评论表

CREATE TABLE `album_comment` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `album_id` bigint(20) DEFAULT NULL,

  `visitor_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FK1cy6btdqoy9096m0frrcpo3g2` (`album_id`),

  KEY `FKietvdkm0nluxxixvamf2p7s5o` (`visitor_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(3)blog 博客表

CREATE TABLE `blog` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `comment_number` bigint(20) DEFAULT NULL,

  `content` varchar(255) DEFAULT NULL,

  `cover` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `image` varchar(255) DEFAULT NULL,

  `little_content` varchar(255) DEFAULT NULL,

  `little_title` varchar(255) DEFAULT NULL,

  `title` varchar(255) DEFAULT NULL,

  `view_number` bigint(20) DEFAULT NULL,

  `mood_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FKnwck5t6ye777cw5njohwcjlh9` (`mood_id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

(4)blog_catalog 博客目录表

CREATE TABLE `blog_catalog` (

  `blog_id` bigint(20) NOT NULL,

  `catalog_id` bigint(20) NOT NULL,

  PRIMARY KEY (`blog_id`,`catalog_id`),

  KEY `FKfo32rwtsnmv0bccmx8hl62rym` (`catalog_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(5)blog_comment 博客评论表

CREATE TABLE `blog_comment` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `blog_id` bigint(20) DEFAULT NULL,

  `visitor_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FKb9cpog8ie2cyapsyyt7gikpbl` (`blog_id`),

  KEY `FKo4sla94v9lbh09pbiwdpou7b1` (`visitor_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(6)catalog 目录表

CREATE TABLE `catalog` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `catalog` varchar(255) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

(7)image 图片表

CREATE TABLE `image` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `image` varchar(255) DEFAULT NULL,

  `album_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FKklgd5pxhpuh3nwik115myord` (`album_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(8)message 消息表

CREATE TABLE `message` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `visitor_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FKe68qvwo3ve0unatu9eo4ub3f1` (`visitor_id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

(9)mood 心情表

CREATE TABLE `mood` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL,

  `create_time` varchar(255) DEFAULT NULL,

  `image` varchar(255) DEFAULT NULL,

  `title` varchar(255) DEFAULT NULL,

  `user_id` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`id`),

  KEY `FK650gbgeldymqxf4wmj7ldqkyl` (`user_id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

(10)user 用户表

CREATE TABLE `user` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `create_time` varchar(255) DEFAULT NULL,

  `image` varchar(255) DEFAULT NULL,

  `password` varchar(255) DEFAULT NULL,

  `personal_sign` varchar(255) DEFAULT NULL,

  `username` varchar(255) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;

(11)user connection  游客第三方用户连接表

CREATE TABLE `userconnection` (

  `userId` varchar(255) NOT NULL,

  `providerId` varchar(255) NOT NULL,

  `providerUserId` varchar(255) NOT NULL,

  `rank` int(11) NOT NULL,

  `displayName` varchar(255) DEFAULT NULL,

  `profileUrl` varchar(512) DEFAULT NULL,

  `imageUrl` varchar(512) DEFAULT NULL,

  `accessToken` varchar(512) NOT NULL,

  `secret` varchar(512) DEFAULT NULL,

  `refreshToken` varchar(512) DEFAULT NULL,

  `expireTime` bigint(20) DEFAULT NULL,

  PRIMARY KEY (`userId`,`providerId`,`providerUserId`),

  UNIQUE KEY `UserConnectionRank` (`userId`,`providerId`,`rank`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

(12)visitor 游客表

CREATE TABLE `visitor` (

  `id` bigint(20) NOT NULL AUTO_INCREMENT,

  `image` varchar(255) DEFAULT NULL,

  `password` varchar(255) DEFAULT NULL,

  `username` varchar(255) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8;

原文地址:https://www.cnblogs.com/1138720556Gary/p/12111616.html

时间: 2024-10-29 01:18:31

JavaWeb_gy博客网站_数据库实现的相关文章

B/S博客网站

每天记录学习,每天会有好心情.*^_^* 今日思考,完成一个博客网站建设的实现与开发项目,需要实现哪些功能?此类项目常见描述如下:博客,是使用特定的软件,在网络上出版.发表和张贴个人文章的人,或者是一种通常由个人管理.不定期张贴新的文章的网站.采用当前非常流行的B/S体系结构,以JSP作为开发技术,主要依赖SSM技术框架,实现对博客信息的高质管理. SSM(MYECLIPSE)框架及其适合博客网站建设的实现与开发,使用MVC的思想可以极大程度减少重复工作量.和SSM(MYECLIPSE)框架最配

利用Metaweblog技术的API接口同步到多个博客网站(详细)

很早就有这个想法:自己有时候会用到多个博客,有些博客在一个网站上写完之后,要同步到其他博客网站,自己只能复制粘贴,感觉特别没意思,复制粘贴的麻木了.一直在想有哪些技术能实现一次写博,多站同步.最近网上搜了下,还真有这方面的资料,那就是用Metaweblog的API接口,这种特别像foxmail一样能把多个邮箱都集中在一起管理来收发邮件,Metaweblog能一次把写的博客同步到多个博客. 直接用Metaweblog来实现同步功能不太方便,幸好有了Windows live writer这个实现了M

独立博客网站FansUnion.cn运营2年的经验和教训以及未来规划

今天,我把运营了2年的独立博客网站FansUnion给"归零"了.    2012年6月,我成功搭建了自己的博客网站FansUnion.cn,这是由于自己的不懈努力和时代发展成就的.而今天的"归零"是希望可以做得更好,在过去的2年里,积累了很多网站和互联网相关的经验,大大提升了自己的"一站式开发和服务"能力. 经验教训1. 数据库经常挂,有一次数据还没有备份,导致最新的文章可能丢失了几篇,通过工具恢复的数据,有点乱,没有正常备份的清晰. 2.内存

使用wordpress建立企业或博客网站新手教程

前言   wordpress个开源的,知名的,拥有无数的插件和主题的知名blog/CMS php程序.全球数百万的网站通过wordpress建立或修改. 现在非常多的企业网站使用wordpress来建立和管理自己的企业网站或者博客网站.所以对于新手来说,如何建立自己的博客.网站呢? 1. 域名 对于一个网站来说,域名就是一个入口,一个身份证编号.就像我们都知道的百度,域名是baidu.com,所以,你也需要拥有自己的域名. 域名一般在60元左右1年,价格还是比较便宜的. 注册好你的域名后,将域名

新浪SAE上搭建WordPress个人博客网站-开篇

新浪SAE上搭建WordPress个人博客网站-开篇 2014年5月29日 在开始这篇博客之前,笔者在这里先普及两个东西: SAE,Sina App Engine的简称,是新浪的内部开发的云计算平台,在这里开发者可以创建Web应用和移动应用.我们创建好的应用就可以部署到SAE服务器上,它会帮我们进行负载均衡,SAE提供很多功能和服务,详细内容请到http://sae.sina.com.cn/进行查看. WordPress想必很多个人站长都非常熟悉了,它是一种使用PHP语言和MySQL数据库开发的

初试Nodejs——使用keystonejs创建博客网站1(安装keystonejs)

我正在阿里云上创建一个简单的个人博客网站,刚好正在尝试NodeJs,决定找一款基于NodeJs的CMS来完成这个工作,最后找到了KeyStoneJS. KeyStoneJS是基于Express和MongoDB的CMS架构,详细介绍参见官网http://keystonejs.com/zh/.本文记录一下keystonejs的安装过程,后续将记录基于keystonejs的二次开发过程. keystonejs的安装过程并不复杂,但由于涉及到node.js,MongoDB,yo等安装,如果某一步陷到坑里

使用LAMP创建基于wordpress的个从博客网站

参考: http://blog.csdn.net/ck_boss/article/details/27866117 一.mysql配置 1.安装mysql yum install mysql-server CentOS中已经默认安装,此步骤忽略. 2.启动mysql service mysqld start 3.登录mysql [[email protected] share]# mysql -u -root -p Enter password: Welcome to the MySQL mon

阿里云+wordpress搭建个人博客网站

文章来源:http://www.cnblogs.com/smyhvae/p/4965163.html 原文服务器准备部分去掉了,记录重要部分留作回头整理. 版本情况如下: 阿里服务器web环境一键安装包 官网购买地址: 分享:https://files.cnblogs.com/files/wowind/sh-1.5.5.zip wordpress: 官方下载地址:https://cn.wordpress.org/ phpMyAdmin: 官方下载地址:https://www.phpmyadmin

Django搭建博客网站(一)

Django搭建自己的博客网站(一) 简介 这个系列主要是通过使用Django这个python web框架实现一个简单的个人博客网站.对Django有疑问可以上Django官网查文档. 功能 后台管理文章发布,修改,删除 分标签管理 依赖 除了使用Django以外,网页排版部分使用了Bootstrap框架,文章编辑器和解析器分别使用django-pagedown和markdown2. install $ pip install django $ pip install django-pagedw