程序与技术分享:CleanBlog(个人博客+源码)

简介: 程序与技术分享:CleanBlog(个人博客+源码)

  CleanBlog是一个高端(低调)、大气(简洁)的个人博客系统,之前在网上看到了好多个人博客网站,感觉很酷的,自己也想搭建一个,最近 刚学完SSM(Spring/SpringMVC/MyBatis),所以就采用SSM来搭建一个简洁的个人博客。先上一张博客首页图片:


1 CleanBlog架构


   CleanBlog整体架构比较简单,主要有写博客、看博客、留言板功能。CleanBlog由SSM技术来实现,SpringMVC负责请求解析转发 并渲染视图,MyBatis负责持久层的交互操作,Spring作为整体平台集成SpringMVC和MyBatis。数据库使用MySQL,Web前端 采用了Bootstrap,文本编辑器使用了UEditor(一个开源富文本Web编辑器,来自百度),前端布局灵感来自于Clean Blog(也可以说是套用该模板)。


CleanBlog整体框架图:


2 CleanBlog逻辑讲解


  CleanBlog采用IDEA开发,首先需要搭建SSM环境//代码效果参考:http://www.lyjsj.net.cn/wx/art_24185.html

,关于如何在IDEA下搭建SSM环境请点击:MyBatis使用总结+整合Spring和Spring学习之第一个Spring MVC程序(IDEA开发环境)。最后搭建好的工程如下图所示:

2.1 数据表


  目前CleanBlog功能较少,只涉及到2张表,blog表和message表(留言板功能)。两个表结构分别如下所示:


CREATE TABLE blog (


id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,


title VARCHAR(128) NOT NULL,


text TEXT,


preview VARCHAR(128),


author VARCHAR(32),


category VARCHAR(32),


date TIMESTAMP DEFAULT '2016-05-20 00:00:00'


);


CREATE TABLE message (


id INT NOT NULL PRIMARY KEY AUTO_INCREMENT,


author VARCHAR(32),


content TEXT,


date TIMESTAMP DEFAULT '2016-05-20 00:00:00'


)


2.2 数据表操作Dao类


  数据表操作Dao类在 com.luoxn28.blog.dao包下,主要有Blog和Message相关Dao类,其中该包下的xxxMapper.xml文件是对应Dao 类的SQL映射文件,MyBatis中会用到该SQL映射文件。com.luoxn28.blog.dao包结构如下所示:


2.3 CleanBlog控制器类


  CleanBlog控制器类有Blog类(用于显示blog)、Index类(显示主页)、Message类(留言板功能)、Post(在线写博客),这几个类都在com.luoxn28.blog.controller包下,该包结构如下所示:


  比如Index源码如下,负责接收主页请求逻辑的处理:


package com.luoxn28.blog.controller;


import com.luoxn28.blog.dao.Blog;


import com.luoxn28.blog.dao.BlogDao;


import com.luoxn28.blog.dao.MessageDao;


import org.springframework.beans.factory.annotation.Autowired;


import org.springframework.stereotype.Controller;


import org.springframework.web.bind.annotation.RequestMapping;


import java.util.List;


import java.util.Map;


/*


Index控制器


@author luoxn28


@date 2016.6.18


*/


@Controller


@RequestMapping


public class Index {


// blog表操作类


@Autowired


private BlogDao blogDao;


// Message表操作类


@Autowired


private MessageDao messageDao;


@RequestMapping("/index")


public String index(Map map) {


List blogs = blogDao.getAll();


List messages = messageDao.getAll();


map.put("blogs", blogs);


map.put("messages", messages);


return "index";


}


@RequestMapping("/")


public String index0(Map map) {


return index(map);


}


}


3 CleanBlog源码获取


  下面到了见证源码的时刻了,该项目的源码已经push到了我的github上了,项目地址为:luoxn28/CleanBlog(ps: 欢迎Star);CleanBlog目前已经部署到了服务器上,在线访问请点击:


3.1 如何使用CleanBlog


   fork整个CleanBlog工程后,下载到本地,然后新建IDEA的J2EE工程,选择Web Application。然后导入CleanBlog源码,在src目录下新建db.properties文件,该文件和db.sql文件在同一个目录 //代码效果参考:http://www.lyjsj.net.cn/wx/art_24183.html

下,用于配置数据库相关信息,主要配置内容如下所示,jdbcUrl后的参数用于设置数据传输编码格式,解决中文入库乱码问题。

user=xxx


password=xxx


driverClass=com.mysql.jdbc.Driver


jdbcUrl=jdbc:


  然后,登录MySQL,运行工程src目录下的db.sql中的所有命令,新建项目所需的数据库和数据表。最后编译、运行,打开浏览器就可以看到CleanBlog的主页了。


资源链接:


  1、CleanBlog源码


  2、CleanBlog在线演示

相关文章
|
6月前
|
移动开发 小程序 JavaScript
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
(一)、项目介绍及知识点概述【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】
100 0
|
机器人
[笔记]微信公众号搭建
[笔记]微信公众号搭建
|
5月前
|
存储 vr&ar Windows
程序与技术分享:DDraw笔记
程序与技术分享:DDraw笔记
32 0
|
5月前
|
前端开发 JavaScript IDE
程序与技术分享:createjs入门
程序与技术分享:createjs入门
48 0
|
5月前
|
移动开发 JavaScript 前端开发
程序与技术分享:AppCan入门教程
程序与技术分享:AppCan入门教程
31 0
|
5月前
|
缓存 关系型数据库 MySQL
Thinkphp5技术交流分享个人博客网站源码
Thinkphp5技术交流分享个人博客网站源码
91 0
|
前端开发 程序员 数据库
程序员需要知道的50个网址,包括编程社区、开发工具、技术博客、在线课程等。
以下是 50 个程序员必须要知道的网站: 1. Codecademy(www.codecademy.com):在线编程学习平台,提供多种编程语言的入门课程。 2. Khan Academy(www.khanacademy.org):非营利性在线学习平台,提供有关计算机科学和编程的免费课程。 3. Udemy(www.udemy.com):在线教育平台,提供大量编程课程,包括入门课程和进阶课程。 4. Coursera(www.coursera.org):在线教育平台,提供全球顶尖大学和机构的编程课程。 5. edX(www.edx.org):在线教育平台,提供全球顶尖大学和机构的编程课程。 6
170 0
|
缓存 安全 druid
手把手教你设计一个CSDN系统
在CSDN发一个CSDN系统是什么体验?大家都知道CSDN 有一个下载的模块,就是用户上传资源然后管理员会进行审核,上传资源的用户可以赚钱还可以赚积分。
249 0
手把手教你设计一个CSDN系统
|
缓存 JavaScript 前端开发
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站
手把手教你从0开始搭建个人博客,东半球最详细的保姆级博客搭建部署教程 | 程序员人手必备个人博客网站
下一篇
无影云桌面