ssm框架整合实战-个人博客系统
接下来将分享一下我自主整合的ssm框架,并用来开发个人博客系统。系统采用springmvc4、spring4、mybatis3作为后端核心框架,后端页面框架采用jquery-easyui,前端页面框架采用bootstrap,页面解析采用jstl标签,数据库采用mysql,服务器采用tomcat,开发的ide采用eclipse kepler版本。
下面整体介绍一下系统的功能:
一、前端模块
1,首页浏览博客列表,分页展示,模糊搜索博客,按照类别与发布日期进行筛选
2,点击查看博客详情
3,对博客发表评论
二、后端模块
1、对博客进行管理
2、对博客类型进行管理
3、对友情链接进行管理
....
紧接着,介绍一下数据库设计:
一:数据库设计图如下(其中表与表的关系已经在该图体现出来了)
二:数据库表建表sql如下:
1、博客表
CREATE TABLE `tb_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 '类型id',
`keyWord` varchar(200) DEFAULT NULL COMMENT '关键词',
PRIMARY KEY (`id`),
KEY `typeId` (`typeId`),
CONSTRAINT `tb_blog_ibfk_1` FOREIGN KEY (`typeId`) REFERENCES `tb_blogtype` (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=82 DEFAULT CHARSET=utf8 COMMENT='博客';
2、博主表(后期改为用户表)
CREATE TABLE `tb_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='博主';
3、博客类型表
CREATE TABLE `tb_blogtype` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`typeName` varchar(30) DEFAULT NULL COMMENT '类型名称',
`orderNo` int(11) DEFAULT NULL COMMENT '序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=13 DEFAULT CHARSET=utf8 COMMENT='博客类型';
4、博客评论表
CREATE TABLE `tb_comment` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`userIp` varchar(50) DEFAULT NULL COMMENT '用户ip',
`blogId` int(11) DEFAULT NULL COMMENT '博客id',
`content` varchar(1000) DEFAULT NULL COMMENT '评论内容',
`commentDate` datetime DEFAULT NULL COMMENT '评论日期',
`state` int(11) DEFAULT NULL COMMENT '状态',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=343 DEFAULT CHARSET=utf8 COMMENT='评论';
5、友情链接表
CREATE TABLE `tb_link` (
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',
`linkName` varchar(100) DEFAULT NULL COMMENT '链接名称',
`linkUrl` varchar(200) DEFAULT NULL COMMENT '链接地址',
`orderNo` int(11) DEFAULT NULL COMMENT '序号',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=12 DEFAULT CHARSET=utf8 COMMENT='友情链接';
然后,介绍一下项目搭建完成时的整体结构:
最后,就是开始介绍项目是如何一步一步搭建的。结束之前,先把项目的部署描述文件web.xml跟项目所需要的Jar包分享一下吧:
一:jar包的下载地址
jar包下载完成,解压之后,全部丢进WEB-INF下的lib目录即可
二:web.xml内容(web.xml的配置当然是放在第一位了,配置完了之后,再相继去配置其他的配置文件:spring springmvc 以及mybatis、jdbc的等等)
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
id="WebApp_ID" version="3.0">
<display-name>blog</display-name>
<welcome-file-list>
<welcome-file>a.jsp</welcome-file>
</welcome-file-list>
<!-- shiro过滤器定义 -->
<filter>
<filter-name>shiroFilter</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
<init-param>
<!-- 该值缺省为false,表示生命周期由SpringApplicationContext管理,设置为true则表示由ServletContainer管理 -->
<param-name>targetFilterLifecycle</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>shiroFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- Spring配置文件 -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-*.xml</param-value>
</context-param>
<!-- Spring监听器 -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 编码过滤器 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<async-supported>true</async-supported>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 监听器:初始化组件 把博主信息、根据博客类别分类信息、根据日期归档分类信息 存放到application中,用以提供页面请求性能 -->
<listener>
<listener-class>com.steadyjack.service.impl.InitComponent</listener-class>
</listener>
<!-- 添加对springmvc的支持 -->
<servlet>
<servlet-name>springMVC</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring-mvc.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
<async-supported>true</async-supported>
</servlet>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>springMVC</servlet-name>
<url-pattern>*.html</url-pattern>
</servlet-mapping>
</web-app>
这时候,项目启动自然会报错,别急。。。因为还有其他配置没配置完,下一篇继续!
如果有相关问题:如想找我付费开发其他功能,讨论其中相关问题等等,可以来以下两群找我,我叫debug!
java开源技术交流:583522159 个人QQ:1948831260