11 Star 36 Fork 20

静远 / bumishi-blog

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README

背景

一直在找一个心仪的博客系统。标准之一就是要Java写的,不然很难自己去做修改。所以即使wp依然很成熟了,但终究不适合我这个Java码农。后来也发现了jpress,号称Java版本的wp,可是使用的技术框架是jfinal。并非jfinal不好,毕竟不是自己最熟悉最擅长的技术,也终究不是主流技术的最佳选择。于是,基于admin-manage的同样背景,开始了重新早轮子的事情,bumishi-blog也由此诞生。

既然是重新造轮子,自然希望它更加符合当下的技术潮流。

在当下云计算与微服务的背景下,bumishi-blog也很自然的迎合了这种技术趋势。

1.基于springboot作为核心技术框架

作为Java的绝对主流技术,个人认为spring未来也必然会是Java的主流技术。springboot的出现彻底地改变了spring配置繁琐的面貌,已极其现代化的姿态迅速扩散,成为最受欢迎的技术框架。spring-cloud项目基于spring-boot,为构建分布式微服务提供了一站式解决方案。spring生态已经足以支持构建各个领域的应用。学好spring,足以让我们在Java世界立足。

2.基于领域驱动设计思想

如果你还在写dao+service+controller的代码,我不知道你是否有过想吐的感觉?是否觉得那真的是一种机械式的无需任何思想的工作?更重要的是,对大型复杂的系统,无论是优雅架构,代码复用还是扩展维护都不能很好的应对。 领域驱动设计思想已经提出很多年了,可是只有真正牛的公司和人才在使用和关注,对技术有着深刻追求的你,怎么可以不去接触领域驱动设计?

整体结构

目前bumishi-blog相关技术点:目前bumishi-blog相关技术点:

  • spring-boot,spring-cache,druid,领域驱动设计

  • 站点导航、博客分类、博客管理、网站信息配置、gitbook管理都有admin-manage后台管理

  • 支持全文搜索,关键词高亮,基于elasticsearch5.1实现

  • 支持根据blog编排成gitbook

  • 博客文章基于editor.md,图片上传集成七牛云存储,文章图片加水印

  • 整站数据缓存,admin后台修改站点实时更新

  • 集成spring-boot-admin,通过admin后台可以监控到admin-manage和bumishi-blog的详细信息

  • 评论使用第三方畅言

  • 集成微信消息回复,将微信信息转成博客搜索结果

  • 基础图灵机器人,搜索不到博客时有机器人回答

##演示地址 在线演示

###本地运行简介###

1.依赖bumishi-toolbox项目####

bumishi-toolbox源码

2.配置application.yml

1.配置admin-manage的地址,目的是能在admin-manage监控到bumishi-blog的信息

boot:
    admin:
      #这里是admin-manage的地址,/admin是admin-manage中配置的spring.spring.boot.admin.context-path
      url: http://localhost:10000/admin
      context-path: /admin

修改localhost:10000为你自己的admin-manage地址和端口,其它不变。

2.配置允许访问博客管理api的主机,目的是博客管理的功能是在bumishi-blog中,web入口在admin-manage中,需要允许admin-manage调用博客管理api

blog:
  manage:
    ##允许访问博客管理api的机器
    allow: localhost,127.0.0.1,bumishi.tech

3.配置bumishi-blog数据库的jdbc信息.mysql脚本在bumishi_blog.sql。

4.配置微信公众号和图灵api的相关apiKey和secretKey

//微信信息
weixin:
  token: weiqiang
  aesKey:
  subscribe: '我是不迷失'//这里是关注公众号回复的信息

//图灵api信息
tulin:
  key:
  secret:

4.admin-manage的配置中需要在application-default.yaml配置中需要配置七牛的相关配置以支持图片上传到七牛,需要配置bumishi-blog的地址,因为admin-manage管理博客功能需要调用bumishi-blog的api。admin-manage本身不维护博客的任何数据。

admin-manage的详细介绍: http://bumishi.cn/blog/1

5.由于基于elasticsearch进行博客全文索引,并且博客数据存放在elasticsearch中,需要配置elasticsearch环境,并初始化blog索引。 脚本在index_init.sh中,执行两个curl命令即可。

elasticsearch的安装及介绍等: http://bumishi.cn/blog/3

效果预览:

公众号信息回复

###交流群:245130488###

##不迷失微信公众号:javajidi_com## ###专注Java技术研究###

空文件

简介

基于springboot及spring技术栈,ddd思想的通用个人博客 展开 收起
Java
取消

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/xieqiangcode/tech-blog-api.git
git@gitee.com:xieqiangcode/tech-blog-api.git
xieqiangcode
tech-blog-api
bumishi-blog
master

搜索帮助