SMM博客系统
开发工具:eclipse,jdk1.8 Tomcat8.0 mysql
框架:SSM-Spring+SpringMVC+MyBatis
该博客主要使用JSP实现前台页面,采用MVC开发技术,用MySQL数据库实现后台数据库管理,mybatis负责与数据库的连接和对数据的处理
游客:阅读博客,发表评论
博主:发表博客,审核评论,登录
设计思想
系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端通过jsp实现。而内部复杂的业务逻辑主要通过JavaBean的组件(Component)实现,JavaBean组件在服务器上运行,通过JSP返回到客户浏览器。
在服务器端,系统使用mybatis访问数据库,系统业务逻辑由JavaBean组件完成,使用JDBC驱动程序访问数据库(MySQL)
功能模块
- 博客管理:包括博客的新建,修改,删除等功能
- 博客类别管理:在前台发表的博客进行分类,进行添加,修改,删除博客类别
- 评论管理模块:游客发表的评论要经过审核才能发表在前台
- 友情链接管理:前台显示的友情链接是在这里进行添加
数据库设计
博课表 t_blog 博主表 t_blogger 评论表 t_comment 博客类型表 t_blogtype 友情链接表 t_link
CREATE TABLE `t_blog` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`title` varchar(200) DEFAULT NULL COMMENT '标题',
`summary` varchar(400) DEFAULT NULL COMMENT '摘要',
`releaseDate` datetime DEFAULT NULL COMMENT '发表时间',
`clickHit` int(11) DEFAULT NULL COMMENT '点击数',
`replyHit` int(11) DEFAULT NULL COMMENT '评论数',
`content` text COMMENT '内容',
`typeId` int(11) DEFAULT NULL COMMENT '所属博客类型',
`keyWord` varchar(200) DEFAULT NULL COMMENT '关键字',
PRIMARY KEY (`id`),
KEY `typeId` (`typeId`),
CONSTRAINT `t_blog_ibfk_1` FOREIGN KEY (`typeId`) REFERENCES `t_blogtype` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8 COMMENT='博客表';
CREATE TABLE `t_blogger` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`userName` varchar(50) DEFAULT NULL COMMENT '登录名',
`password` varchar(100) DEFAULT NULL COMMENT '密码',
`profile` text COMMENT '个人信息',
`nickName` varchar(50) DEFAULT NULL COMMENT '昵称',
`sign` varchar(100) DEFAULT NULL COMMENT '个性签名',
`imageName` varchar(100) DEFAULT NULL COMMENT '头像地址',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8 COMMENT='博主';
CREATE TABLE `t_blogtype` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`typeName` varchar(100) DEFAULT NULL COMMENT '类型名称',
`orderNo` int(11) DEFAULT NULL COMMENT '序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8 COMMENT='博客类型表';
CREATE TABLE `t_comment` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键',
`userIp` varchar(50) DEFAULT NULL COMMENT '评论者IP',
`blogId` int(11) DEFAULT NULL COMMENT '被评论博客的主键',
`content` varchar(1000) DEFAULT NULL COMMENT '评论内容',
`commentDate` datetime DEFAULT NULL COMMENT '评论时间',
`state` int(11) DEFAULT NULL COMMENT '评论状态:0未审核1审核通过2审核不通过',
PRIMARY KEY (`id`),
KEY `blogId` (`blogId`),
CONSTRAINT `t_comment_ibfk_1` FOREIGN KEY (`blogId`) REFERENCES `t_blog` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=16 DEFAULT CHARSET=utf8 COMMENT='评论表';
CREATE TABLE `t_link` (
`id` int(11) unsigned zerofill NOT NULL AUTO_INCREMENT COMMENT '主键',
`linkName` varchar(100) DEFAULT NULL COMMENT '网站名称',
`linkUrl` varchar(500) DEFAULT NULL COMMENT '网站地址',
`orderNo` int(11) DEFAULT NULL COMMENT '序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='友情链接';
一 创建maven项目
1. 设置本地maven
2.设置JDK
3.设置编码为UTF-8
二 添加依赖
jsp爆红添加servlet jsp支持
<!-- 添加Servlet支持 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
<scope>provided</scope>
</dependency>
<!-- 添加jstl支持 -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<!-- 添加Spring支持 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.3</version>
</dependency>
<!-- 添加日志支持 -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.17</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.7.12</version>
</dependency>
<!-- 添加mybatis支持 -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.3.0</version>
</dependency>
<!-- JDBC驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.37</version>
</dependency>
<!-- 添加shiro支持 -->
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-core</artifactId>
<version>1.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-web</artifactId>
<version>1.2.4</version>
</dependency>
<dependency>
<groupId>org.apache.shiro</groupId>
<artifactId>shiro-spring</artifactId>
<version>1.2.4</version>
</dependency>
<!-- 添加ueditor编辑器支持 -->
<dependency>
<groupId>commons-fileupload</groupId>
<artifactId>commons-fileupload</artifactId>
<version>1.3.1</version>
</dependency>
<!-- 添加apache公共包 -->
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
</dependency>
<dependency>
<groupId>commons-lang</groupId>
<artifactId>commons-lang</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
<artifactId>commons-beanutils</artifactId>
<version>1.8.0</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>net.sf.ezmorph</groupId>
<artifactId>ezmorph</artifactId>
<version>1.0.6</version>
</dependency>
<!-- 添加lucene支持 -->
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-core</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-common</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-analyzers-smartcn</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-queryparser</artifactId>
<version>5.3.1</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-highlighter</artifactId>
<version>5.3.1</version>
</dependency>
<!-- 添加连接池druid支持 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.16</version>
</dependency>
<!-- 添加jsoup支持 -->
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.8.3</version>
</dependency>
三 添加lib jar包
1. 项目Blog右键 Properties
2. 更换 jdk1.8加入新增的jar包
四 静态页面导入
导入成功 config.json爆红先不用管
五 部署到Tomcat
双击Server更改加载时间