MyBatis博客系统项目搭建准备

一.型背景

  1999年初,由于
Cameron与Jesse共同保护的博客站点列表既幽默又易于阅读,吸引了很多人的眼珠。在这种状态下,Peter
Merholz宣称:“这个突出事物必将引起大多数丁之专注。作为未来底一个时不时因此词语,web-blog将不可避免地给简称为blog,而那些编写网络日志的总人口,也就算天经地义地变成blogger“博客”。这象征正博客被规范定名。

  8月份,Pyra发布了Blogger网站,Groksoup也投入运营,使用这些号所提供的简便的冲互联网的家伙,博客站点的数毕竟出现了同等种植爆炸性增长。1999年最后,软件研发商Dave
Winer向大家推荐EditTh isPage网站,JefA .Ca
mpbell发布了Velocinews网站。所有的这些劳务还是免费之,他们之目的吗十分明显:让更多之总人口变成博客,来网上发表意见和见解。

  随着Blogging快速扩充,它的目的和首的浏览网页心得已相去甚远。目前网络直达数以千计的
Bloggers发表和张贴Blog的目的来格外要命之别。不过,由于联系方式较电子邮件、讨论群组更简便易行与爱,Blog已成为家庭、公司、部门以及团伙里愈加流行之关联工具,因为其呢逐年为用在店铺里网络(Intranet)中。目前,BSP商家风
起云涌,已发生数十家大型博客站点。目前,国内优秀之国语博客网有:新浪博客,搜狐博客,中国博客网,腾讯博客,博客中国当。

二.博客系统功能分析

  1.体系提供无注册用户注册、浏览其他都登记用户发布的日记、日志分类信息、图片详情、相册信息,查看日志评论等作用。

  2.除了提供无注册用户之享有机能外,系统于已经登记用户提供后台管理力量,注册用户可浏览管理个人发布之日志、浏览和保管个人相册、浏览以及管理评价、浏览以及管制个人信息、浏览和管制常因此链接、浏览以及修改个人登录密码、安全退出系统等功用。

  3.体系有着日志可视化文本编辑功能,使用百度编辑器对日记内容开展录入,可以方便的按好之布局方式示日志内容。

三.博客系统架构

1.效益列表

MyBatis 1

 

 

MyBatis 2

2.博客系统架构

2.1 mvc架构

  MVC框架是由Model模型(JavaBean),View视图(Jsp) 和
Controller控制器(Servlet)构成:

  (1).Model:承载数据,并对用户提交请求进行测算的模块。其分成两近似,一近乎称为数据承载Bean,一近乎称为业务处理Bean。所谓数据承载Bean是恃实体类,专门承载业务数据的。而工作处理Bean则是负Service或Dao对象,专门用于拍卖用户提交请求的。

  (2).View:为用户提供用界面,与用户直接进行互。

  (3).Controller:用于将用户要转发给相应的Model进行拍卖,并拿拍卖Model的测算结果于用户提供相应响应。

                           MyBatis 3

 

 

2.2 ssm框架

  SSM(Spring+SpringMVC+MyBatis)框架集由Spring、SpringMVC、MyBatis三个开源框架整合而成为,常作为数据源较简单的web项目之框架。

  (1).SpringMVC:作为View层的实现啊,完成用户的乞求接收效果。SpringMVC的Controller作为全应用的控制器,完成用户请求的转速以及对用户之应

  (2).MyBatis:作为 Dao层的兑现啊,完成对数据库的多、删、改、查力量。

  (3).Spring:以通栏应用大管家之身份出现。整个应用被兼有的Bean的生命周期行为,均由Spring来管理。即所有应用被拥有目标的创、初始化、销毁,及对象中涉及关系的保护,均由Spring进行管理。

 

MyBatis 4

四.数据库设计

1.计划要求和要求

  根据需要,共计划了7摆表,分别吗t_user(用户表),t_album(相册表)
,t_category(日志分类表),t_comment(日志评论表),t_journal(日志表),t_link(常因此链接表),t_photo(图片详情表)这7张表的规划严格以数据库的正经,尽可能符合可以下要求。

  (1)数据的完整性:保证数据库中存取数据准确、完整、数据更新的一致性。

  (2)数据的结构化:设计层次分明,分布合理。在满足系统所需要功能的前提下,在规划时得设想基本表的个数越少越好,主键的个数越少越好,字段个数越少越好。

  (3)减少数额冗余:一方面数据库系统应该尽量减少数据冗余,节省存储空间。另一方面,还要考虑相当的冗余,以加强系统的运行  
 速度跟后台逻辑开发速度。

 2.数据库架构

MyBatis 5

3.数码库表结构

(1)t_user 用户表

MyBatis 6

MyBatis 7MyBatis 8

CREATE TABLE `t_user` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户编号',
  `username` varchar(64) NOT NULL COMMENT '用户名',
  `password` varchar(128) NOT NULL COMMENT '密码',
  `nickname` varchar(255) DEFAULT NULL COMMENT '昵称',
  `email` varchar(64) DEFAULT NULL COMMENT '注册邮箱',
  `sign` varchar(255) DEFAULT NULL COMMENT '个性签名',
  `name` varchar(36) DEFAULT NULL COMMENT '真实姓名',
  `sex` varchar(12) DEFAULT NULL COMMENT '性别',
  `phonenumber` varchar(36) DEFAULT NULL COMMENT '手机号码',
  `address` varchar(64) DEFAULT NULL COMMENT '家庭住址',
  `upload` varchar(64) DEFAULT NULL COMMENT '头像',
  `registime` date DEFAULT NULL COMMENT '注册时间',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8

用户表sql

 

 (2)t_journal 日志表

MyBatis 9

MyBatis 10MyBatis 11

CREATE TABLE `t_journal` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '日志id',
  `title` varchar(128) DEFAULT NULL COMMENT '日志标题',
  `categoryid` int(11) DEFAULT NULL COMMENT '日志所属日志分类id',
  `content` text COMMENT '日志内容',
  `createtime` date DEFAULT NULL COMMENT '日志创建时间',
  `userid` int(11) DEFAULT NULL COMMENT '日志所属用户id',
  `readtimes` int(11) DEFAULT NULL COMMENT '日志阅读次数',
  `commentime` int(11) DEFAULT NULL COMMENT '日志评论次数',
  `abstract` varchar(255) DEFAULT NULL COMMENT '日志摘要',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  KEY `categoryid` (`categoryid`),
  CONSTRAINT `t_journal_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`),
  CONSTRAINT `t_journal_ibfk_2` FOREIGN KEY (`categoryid`) REFERENCES `t_category` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

日志表sql

 (3)t_category 日志分类表

MyBatis 12

MyBatis 13MyBatis 14

CREATE TABLE `t_category` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '日志分类id',
  `categoryname` varchar(64) DEFAULT NULL COMMENT '日志分类名称',
  `userid` int(11) DEFAULT NULL COMMENT '日志分类所属用户id',
  `count` int(11) DEFAULT NULL COMMENT '日志分类下日志个数',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  CONSTRAINT `t_category_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

日志分类表sql

(4)t_album 相册表,分类管理图片

MyBatis 15

MyBatis 16MyBatis 17

CREATE TABLE `t_album` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '相册id',
  `userid` int(11) DEFAULT NULL COMMENT '相册所属的用户id',
  `count` int(11) DEFAULT NULL COMMENT '该相册下照片的个数',
  `name` varchar(255) DEFAULT NULL COMMENT '相册名称',
  `createtime` date DEFAULT NULL COMMENT '创建相册的时间',
  `describe` text COMMENT '相册描述',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  CONSTRAINT `t_album_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

相册表sql

(5)t_comment 评论表

MyBatis 18

MyBatis 19MyBatis 20

CREATE TABLE `t_comment` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '评论id',
  `content` text COMMENT '评论内容',
  `userid` int(11) DEFAULT NULL COMMENT '发表评论用户id',
  `journalid` int(11) DEFAULT NULL COMMENT '发表评论所属日志分类id',
  `createtime` date DEFAULT NULL COMMENT '发表评论的时间',
  `state` int(11) DEFAULT NULL COMMENT '评论状态 0审核通过 1审核不通过',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  KEY `journalid` (`journalid`),
  CONSTRAINT `t_comment_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`),
  CONSTRAINT `t_comment_ibfk_2` FOREIGN KEY (`journalid`) REFERENCES `t_journal` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

评论表sql

 (6)t_photo 图片详情表

MyBatis 21

MyBatis 22MyBatis 23

CREATE TABLE `t_photo` (
  `id` int(11) NOT NULL COMMENT '图片id',
  `describe` varchar(255) DEFAULT NULL COMMENT '图片描述',
  `path` varchar(255) DEFAULT NULL COMMENT '图片访问地址',
  `createtime` date DEFAULT NULL COMMENT '图片上传时间',
  `userid` int(11) DEFAULT NULL COMMENT '图片所属用户id',
  `albumid` int(11) DEFAULT NULL COMMENT '图片所属相册id',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  KEY `albumid` (`albumid`),
  CONSTRAINT `t_photo_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`),
  CONSTRAINT `t_photo_ibfk_2` FOREIGN KEY (`albumid`) REFERENCES `t_album` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

图片详情表sql

(7)t_link 常用链接表

MyBatis 24

MyBatis 25MyBatis 26

CREATE TABLE `t_link` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '常用链接id',
  `name` varchar(128) DEFAULT NULL COMMENT '常用链接名称',
  `url` varchar(128) DEFAULT NULL COMMENT '常用链接url地址',
  `userid` int(11) DEFAULT NULL COMMENT '常用链接所属用户',
  PRIMARY KEY (`id`),
  KEY `userid` (`userid`),
  CONSTRAINT `t_link_ibfk_1` FOREIGN KEY (`userid`) REFERENCES `t_user` (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

不时因此链接表sql

 

网站地图xml地图