SSM整理笔记1——SSM网站初步功能设计

前言

因为公司里一直用Hibernate,但是现在Mybatis是趋势,所以搭建一个Mybatis的网站框架,目的是:1摸清其功能特点,2为以后的项目增加框架选择(以前只用hibernate或者SpringJDBC)。

功能目标如下:简单的增删改查和联表查询。

网站概述:一个简单的博客网站(只能写单篇博客,不能写章节式小说)

网站功能:用户注册,用户分类,用户登录,用户主页,写博客,博客分类,博客查看。

框架:SpringMVC + Tiles + Spring + Mybatis 

数据库:Mysql5.7

数据库设计如下:(此处的截图来自于DBeaver的功能,比MySQLWorkbench多一些小功能)

由于需要测试多个框架,所以为了方便共享数据,使用了同一个数据库SpringMVC

#mysql数据库
DROP DATABASE IF EXISTS springMVC;
create database springMVC DEFAULT CHARACTER SET utf8 ;
use springMVC;

DROP TABLE IF EXISTS user;
CREATE TABLE user(
id BIGINT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(20) NOT NULL,
password VARCHAR(20) NOT NULL,
slogan VARCHAR(200),
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_date TIMESTAMP NULL ON UPDATE CURRENT_TIMESTAMP
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS user_type;
CREATE TABLE user_type(
id INT PRIMARY KEY AUTO_INCREMENT,
user_type VARCHAR(20) NOT NULL
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS user_message;
CREATE TABLE user_message(
id BIGINT PRIMARY KEY AUTO_INCREMENT,
user_id BIGINT,
user_type_id INT,
interest VARCHAR(20),
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_date TIMESTAMP NULL ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY(user_type_id) REFERENCES user_type(id),
FOREIGN KEY(user_id) REFERENCES user(id) ON DELETE CASCADE
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

DROP TABLE IF EXISTS essay;
CREATE TABLE essay(
id BIGINT PRIMARY KEY AUTO_INCREMENT,
user_id BIGINT,
title VARCHAR(20) NOT NULL,
content text,
flag INT DEFAULT 0,
create_date TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
update_date TIMESTAMP NULL ON UPDATE CURRENT_TIMESTAMP,
FOREIGN KEY(user_id) REFERENCES user(id) ON DELETE CASCADE
)ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
原文地址:https://www.cnblogs.com/lakeslove/p/7044458.html