关于notejava

类别:随笔  阅读:501  发布时间:Thu May 25 00:12:54 CST 2017

notejava是博主的毕业设计,本博客虽然功能简单,但“麻雀虽小,五脏俱全”。

1 基本功能三大块

structure.jpg

(1)博客展现系统:

①博客全文检索,读者可根据关键字进行站内搜索,返回击中的文章。

②热门文章,读者可在热点文章一栏中可以看到阅读量最多的文章。

③最新文章,读者可在最新文章一栏中看到最新发布的文章。

④按类别归档文章,读者可根据类别进行文章筛选阅读。

⑤按时间归档文章,读者可根据文章发表时间筛选阅读。

⑥评论文章,每篇文章的底部都可以评论,支持通过第三方媒体账号登录评论。

⑦留言板,读者可在留言板中给博主留言,提出一些问题或者建议。


(2)博文管理系统:

①文章管理

②文章类别管理

③评论管理

④友情链接管理

⑤博主信息管理

⑥公共缓存数据管理

⑦登录安全校验


(3)博文定时统计任务系统:

①每隔一小时统计出阅读量最多的五篇文章作为热门文章,缓存起来。 

②每隔一小时统计出最新的五篇文章作为最新文章,缓存起来。

③每隔一小时统计出最新的五条评论作为最近评论,缓存起来。


2 逻辑上分为三个系统,交互图如下

interactive.jpg


3 系统E-R图

er.jpg


4 使用自动化部署脚本部署,流程图如下:

deploy.jpg

主要步骤:

①从github中pull最新的代码

②替换线上环境的配置文件

③使用maven编译源码

④备份原来的war包

⑤杀死原tomcat进程

⑥拷贝新编译好的war包到tomcat的webapp目录下

⑦启动tomcat脚本


5 技术栈

 a 本博客使用nutz框架开发

 b 前台页面使用boostrap栅格系统

 c 后台页面使用基于boostrap的detail admin后台管理模板

 d 后台博客新增使用ueditor插件支持单图、多图、截图上传

 e 使用mysql数据库,使用Druid连接池

 f 使用lucene全文检索技术做博客搜索

 g 使用ServletContent在项目启动时缓存一批不常变化的数据,提高性能

 g 项目部署在腾讯云,使用centos6.5操作系统


6 亮点

    a 使用全文检索技术做搜索,用户体验比模糊搜索好很多。

    b 项目部署上线,实用性很强

    c 采用自动化部署脚本进行部署,简化升级流程,做到一键升级

    d 采用nginx做代理和静态资源服务器,服务器只对外暴露80端口,提高服务器安全性,提高访问静态资源效率

    e 使用git管理项目,项目代码贡献到开源社区github上

    f 大量使用了缓存,优化系统性能,提高页面响应速度

    g 整合畅言第三方评论系统,运行用户通过第三方登录来进行评论。优化用户体验。

    


关键字:本站

© copyright 粤ICP备16108162号-1