java 开源博客 solo 2.9.3 发布,可指定移动端皮肤 -买球官网平台

1顶
0踩

 是一款一个命令就能搭建好的 java 开源博客系统,如果你想开个独立博客,请一定不要错过!

2.9.3 版本主要改进是可单独配置移动端访问时渲染的皮肤。另外,特别感谢  给我们带来的新皮肤  ❤️

案例

功能

  • markdown / emoji
  •  / 标签
  • 自定义导航(页面、链接)
  • 草稿夹
  • 评论 /回复邮件提醒
  • 随机文章 / 相关文章 / 置顶 / 更新提醒
  • 自定义文章永久链接
  • 自定义站点 seo 参数
  • 自定义公告 / 页脚
  • 多个签名档
  • 代码高亮 / 数学公式 / 流程图
  •  / 
  • 多语言 / 国际化
  • 上传本地 / 七牛云
  • 买球软件推荐的友情链接管理
  • 多用户写作,团队博客
  • sql / json / markdown 导出
  • 插件系统
  • atom / rss 订阅
  • sitemap
  • metaweblog api
  • cdn 静态资源分离

安装

  • 安装包
  • 解压后执行 java -cp web-inf/lib/*;web-inf/classes org.b3log.solo.starter

从 2.9.2 升级只需将已有的配置拷贝覆盖即可,启动后会自动升级。

文档

项目

  • 买球官网平台官网: 
  • github:
  • 码云:

2.9.3 变更记录

  •  可配置移动端皮肤 feature
  •  使用 cdn 加速看板娘 enhancement
  •  工具类重构 development

历史版本变更请浏览。

来自:
1
0
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 提出疑问 首先问大家一句,什么是函数指针? 肯定有的人会这样回答,函数指针?不就是指向函数地址的一个指针吗?或者就是一个存放着一个函数首地址的变量? 当然,那些有点底层基础的肯定会这样说,函数就是一堆连续的机器码,而函数指针,就是存放了这堆连续机器码首地址的变量。 那么大家是不是回答的时候,考虑的地方是不是仅仅局限于 一般的函数????那么成员函数呢??? 为什么得强调成员函数呢?因为成员函数包括了虚函数和非虚函数(这里涉及虚表问题,可以先简单看看列出的虚函数系列,否则接下来问题会有点难以接受。) 虚函数

  • 一、引言 当我们在 c 中直接像 c 那样使用类的成员函数指针时,通常会报错,提示你不能使用非静态的函数指针: reference to non-static member function must be called 两个解决方法: 把非静态的成员方法改成静态的成员方法 正确的使用类成员函数指针(在下面介绍)   关于函数指针的定义和使用你还不清楚的话,可以先看这篇博客了解一下...

  • c 中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回调函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。 成员函数指针的声明 一个成员函数指针包括成员函数的返回类型,后随::操作符类名,指针名和函数的参数。初看上去,语法有点复杂。其实可以把它理解为一个指向原函数的指针,格式是:函数返回类型,类名,:...

  • c 函数指针与成员函数指针

  • 1: load [object_reg #vftoffset], table_reg2: load [table_reg #deltaoffset], delta_reg3: load [table_reg #selectoroffset], method_reg4: add object_reg, delta_reg, object_reg5: call method_reg虚函...

  • 成员函数指针是相对于对象来说的,在说成员函数指针之前,先要明白普通函数指针的定义与使用。 用vs先建立一个项目,名称随意,然后在源文件中声明并且定义一个函数,代码如下: #include "pch.h" #include <iostream> using namespace std; int add(int a,int b) { return a b; } int main()...

  • 1. 基本概念首先,应该明确: 程序运行期间,每个函数都会占用一段连续的内存空间。  函数名就是该函数所占内存区域的起始地址(也 称“入口地址”)  将函数的入口地址赋给一个指针变量,使该指 针变量指向该函数。然后通过指针变量就可以 调用这个函数。这种指向函数的指针变量称为 “函数指针”。 函数指针定义的一般形式为: 类型名 (* 指针变量名)(参数类型1, 参数类型2,…);  “类型名

  • c语言,10分钟带你玩转函数指针!函数指针优越性,回调函数应用。

  •         c 中,成员指针是最为复杂的语法结构。但在事件驱动和多线程应用中被广泛用于调用回叫函数。在多线程应用中,每个线程都通过指向成员函数的指针来调用该函数。在这样的应用中,如果不用成员指针,编程是非常困难的。   刚遇到这种语法时也许会让你止步不前。但你会发现,使用恰当的类型定义之后,复杂的语法是可以简化的。本文引导你了解成员函数指针的声明,赋值和调用回叫函数。   成员函数指针的声明

  • 1 前言c 语言支持指向成员函数的指针这一语言机制。就像许多其它c 语言机制一样,它也是一把双刃剑,用得好,能够提高程序的灵活性、可扩展性等等,但是也存在一些不易发现的陷阱,我们在使用它的时候需要格外注意, 尤其是在我们把它和c 其它的语言机制合起来使用的时候更是要倍加当心

  • 概要 很遗憾, c 标准中没能提供面向对象的函数指针. 面向对象的函数指针也被称为闭包(closures) 或委托(delegates), 在类似的语言中已经体现出了它的价值. 在 delphi(object pascal) 中, 他们是 vcl (borland's visual component library, 宝蓝可视化组件) 的基础. 最近的 c# 让委托的概念更为流行,...

  • 撰文:don clugston  翻译:周翔 原文:http://www.codeproject.com/cpp/fastdelegate.asp    (作者随时都有可能对文章或代码进行更新)   引子 标准c 中没有真正的面向对象的函数指针。这一点对c 来说是不幸的,因为面向对象的指针(也叫做“闭包(closure)”或“委托 (delegate)”)在一些语言中已经证明了它

  • 前文回顾: c 可调用对象总结(一) 函数对象 c 可调用对象总结(二) lambda表达式 类成员指针 概念 ①.成员指针:成员指针是指可以指向类的非静态成员的指针,成员指针指向的是类的成员,而非类的对象。 ②.成员指针类型:成员指针的类型包括了类的类型以及成员的类型;成员指针初始化时令其指向了类的成员,直到使用成员指针时才会提供成员所属对象。 数据成员指针 ①.定义 声明成员指针也是使用 * 表示当前的名字是个指针,但还必须包含成员所属类,即在 * 之前加 classname::。 co

  • 前言 在之前写过的博客中有介绍过函数指针和指针函数的区别和简单用法(文章在这里),当时的demo非常简单,都是c语言的写法,但是当在c 中直接像c那样使用类成员函数指针时就会报错:reference to non-static member function must be called 所以如果是c 中的成员函数指针其使用方法是有区别的,这里针对不同的场景做个补充说明。 类成员函数的指针(非...

  • c 类成员函数指针的使用方法 #include <iostream> void func(){ std::cout << "void func()" << std::endl; }; class test { public: test() {} virtual ~test() {} public: bool func1(int)...

  •        关于c 成员函数指针的声明,类型定义,赋值和调用就不再赘述了,需要了解的朋友可以看这篇文章:        http://www.cppblog.com/colys/archive/2009/08/18/25785.html              写这篇文章的目的在于看到有文章说c 的成员函数指针并不是普通函数指针,现在我要证明,在我的编译环境中,所看到的c 的成员函数指针...

  • ant..82您可以看到,在从性能角度来看实际上很重要的情况下,例如在一个周期中多次重复调用该函数,性能可能根本不同.这对于人们来说可能听起来很奇怪,他们习惯于将c代码视为由抽象的c机器执行的,其机器语言与c语言本身密切相关.在这种情况下,"默认情况下"对函数的间接调用确实比直接调用慢,因为它正式涉及额外的内存访问以确定调用的目标.但是,在现实生活中,代码由真实机器执行,并由优化编译器编译,该编译...

global site tag (gtag.js) - google analytics