个人网站开发

需求分析

一个简单的、满足基本功能和一些补充项目的个人网站。

  • 博客的新建、删除、修改和查阅及管理,允许进行私密/公开,密码有无,分类和评论设置
  • 支持普通用户注册,注册后可评论
  • 文件上传、重命名、删除、下载和管理,允许进行私密/公开,密码设置
  • 视频、音频的在线播放和图片查阅
  • 允许特殊用户进行有额度的上传文件进行保存和下载
  • 色环电阻计算、天气查询等小功能模块
  • 渗透测试模块,集成了一些常用提示或功能模块,比如自动接入whois查IP
  • 支持站内对站长的消息,支持站长对特殊用户组(主要是室友)的邮件发送,支持特殊用户组内的论坛交流

模块分析

采用MVC设计模式,java ee+mysql+tomcat

  • 用户管理模块,用户分为三种,管理员、特殊用户和普通用户。用户信息包括用户名、用户密码、用户昵称、用户性别、用户手机和用户邮箱,还有用户权限。
  • 博客模块
  • 文件模块
  • 在线播放模块和图片查阅模块
  • 等等

数据库分析

  • 用户表,包括以下字段:用户名,用户密码,用户真实姓名,用户性别,用户手机,用户邮箱,用户类型,用户权限。
  • session表,包括以下字段:用户名,session值。
  • 博客表,包括以下字段:id,标题,文件名,分类,创建时间,是否评论,私密/公开/密码公开,密码,博客访问次数
  • 评论表,包括以下字段:博客id,评论,用户名,评论时间
  • 文件表,包括以下字段:文件id,文件名,文件备注,文件上传时间,文件下载次数,文件在线播放次数,文件是否允许下载,是否允许观看,下载密码,观看密码,下载允许权限,观看允许权限。

创建数据库

create database website;

 使用数据库

use website;

创建用户表

create table users(
account char(15) NOT NULL,
password char(15) NOT NULL,
realName char(8),
sex char(1),
phone char(20),
email char(20),
type tinyint NOT NULL,
jurisdiction tinyint NOT NULL
)engine=InnoDB default charset=utf8;

 session表

create table sessions(
account char(15) NOT NULL,
sessionValue char(60) NOT NULL
)engine=InnoDB default charset=utf8;

博客表

create table blogs(
id int unsigned auto_increment,
title char(30) NOT NULL,
fileName char(30) NOT NULL,
type char(15),#分类
time date NOT NULL,#创建时间 commentStatus
tinyint,#是否允许评论 openStatus tinyint,#是否公开 password char(15),#访问密码 number int unsigned,#访问次数
primary key(id) )engine
=InnoDB default charset=utf8;

评论表

create table comment(
id int unsigned NOT NULL,
comment char(200) NOT NULL,
account char(15) NOT NULL,
time DATE NOT NULL
)engine=InnoDB default charset=utf8;

文件表(管理员使用)

create table files(
id int unsigned auto_increment,
title char(50) NOT NULL,#文件名
path char(30) NOT NULL,#文件相对路径名
remark varchar(30),#备注说明
type char(20),#文件类型
time date,#上传时间
downNumber int unsigned,#下载次数
playNumber int unsigned,#播放次数
playStatus tinyint,#是否允许在线播放
downloadStatus tinyint,#是否允许下载
playPassword char(15),#播放密码
downloadPassword char(15),#下载密码
playJurisdiction tinyint,#播放权限
downloadJurisdiction tinyint,#下载权限
primary key(id)
)engine=InnoDB default charset=utf8;

 

你可能感兴趣的:(个人网站开发)