讲解开源项目:5分钟搭建私人Java博客系统
讲解开源项目:5分钟搭建私人Java博客系统
本文适合刚学习完 Java 语言基础的人群,跟着本文可了解和运行 Tale 项目。示例均在 Windows 操作系统下演示
本文作者:HelloGitHub-秦人
HelloGitHub 推出的《讲解开源项目》系列,今天给大家带来一款基于 Java 语言的轻量级博客开源项目——Tale
它拥有小、美、快、稳的特点。该项目完全开源、免费,能够让你快速搭建包含前、后台的博客系统,大大节省了搭建私人博客的时间,开箱即用。让你可以专注于创作,让有故事的人更方便的表达想法。
Tale 的项目地址:https://github.com/otale/tale
想要快速搭建一套自己的博客,那就跟着本文的步骤。你只需要花 5 分钟,就能拥有一个属于自己的私人博客了,并且可以对整个项目有一个完成的概念和感觉。下面是搭建完成的效果图:
那就让我们开始吧!
一、技术栈
Tale 基于的技术如下:
Blade 框架:快速搭建 Web 应用程序的开源框架,该框架代码简洁、风格优雅。
Jetbrick-template 模板引擎:适合于动态 HTML 页面输出或者代码生成,可替代 JSP 页面或者 Velocity 等模板。 指令和 Velocity 相似,表达式和 Java 保持一致,易学易用。
SQLite 数据库:是一种嵌入式数据库,它的数据库就是一个文件。
二、项目结构
该项目采用 MVC 模式:Model 数据层、View 展现层,Controller 逻辑层。下面简单介绍下项目的结构,便于我们翻阅源码、开发和运行。项目结构如下图:
项目分为前端、后台两部分,下面我们分开来介绍:
2.1 后台代码目录说明
annotation:自定义注解目录,包括系统日志的注解类。
bootstarp:初始化操作目录,包括初始化进程类, sqlite数据库初始化类,公共常量类等。
controller:业务的控制器目录,包括文章控制器,分类控制器,初始化博客的控制器等。
extension:底层公用代码目录,包括后台公共函数,主题公共函数。
hooks:拦截器/过滤器目录,做一些拦截器的操作。
model:数据模型目录,包括数据库模型,参数模型,业务模型。
service:业务层目录,包括站点,系统配置,分类,标签,文章,评论的业务类。
task:定时任务目录,可自定时添加定时任务。
utils:业务层工具类目录,包括图像工具类,缓存工具类,公用工具类。
validators:验证器目录,包括保存文章的校验,添加评论的校验功能。
Application:入口类,在 IDE 中可直接运行。
2.2 前台代码目录说明
plugins:插架存放目录,此目录作者废弃了
static:静态资源目录,包括 css、images、js 和第三方插件
templates:模板资源目录,包括后台管理界面、公共模板和主题模板,支持扩展主题
application*.properties:项目环境配置文件
Tale 的项目的结构很简单和清晰,想把它运行起来也超级简单。你是不是开始手痒痒了,那接下来我们一起让它运行起来吧。
三、实战操作
3.1 准备工作
确保本地已安装 Java8 开发环境:
确保本地已安装 maven 工具:
3.2 下载项目
通过 git clone 命令把项目下载到本地:
git clone https://github.com/otale/tale.git
3.3 运行项目
我这里介绍了两种运行方式:通过 IDE 运行和命令行运行。
3.3.1 通过 IDE 运行
将项目导入到 IDE 中,这里我使用的是开发工具是 IDEA:
找到 com.tale.Application 类,直接运行:
运行成功,如下图:
3.3.2 命令行运行
切换到项目源码路径,编译源码命令如下:
shell mvn clean package -Pprod -Dmaven.test.skip=true
切换路径到 taletargetdist 目录
解压 tale.zip 压缩文件
运行 tale-latest.jar
java -jar tale-latest.jar
启动成功如下图:
3.4 项目启动成功
初始化配置,访问:http://127.0.0.1:9000/ 首次登录,需要填写配置信息:
登录后台管理系统,后台系统链接:http://127.0.0.1:9000/admin/login 输入管理员账号和密码:admin 即可登录:
后台管理页面如下图:
博客前台页面,博客前台链接:http://127.0.0.1:9000/
Tale 博客包含的功能就不一一介绍了,跟着项目的文档,在 web 页面“点点点”就可以了。那么快去写自己博客上的第一篇博客吧!
四、最后
教程至此,这个项目应该已经在你的本地跑起来了。是不是很有成就感?后面怎么玩就看你自己了:部署到服务器正式上线、定制自己专属的功能、给项目贡献代码等,都是可以的。
本教程是针对有一定 Java 编程基础,但又不知道如果运行本项目的小伙伴。如果你是老手欢迎直接阅读下面参考资料,获取更多更详细的资料。
五、参考资料
tale wiki
Blade 官方文档
jetbrick-template 项目地址
Blade 项目地址
欢迎关注 HelloGitHub 公众号,获取更多开源项目的资料和内容
『讲解开源项目系列』启动——让对开源项目感兴趣的人不再畏惧、让开源项目的发起者不再孤单。跟着我们的文章,你会发现编程的乐趣、使用和发现参与开源项目如此简单。欢迎联系我们给我们投稿,让更多人爱上开源、贡献开源~
作者:削微寒
出处:https://www.cnblogs.com/xueweihan/
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
c#小灶——8.自动类型转换和强制类型转换
c#小灶——8.自动类型转换和强制类型转换前面已经认识了不同的数据类型,你们有没有尝试过让不同的数据类型进行运算呢? int a = 1;double b = a;Console.WriteLine(b);运行结果是:1 我们把一个整型的变量赋值给了一个浮点型的变量,可以正常的输出,如果我们把一个浮点型的变量赋值给一个整型的变量呢? double a = 1;int b = a;Console.WriteLine(b);这样就会报错。 为什么呢?因为我们之前说过,变量就像一个容器,里面存放着变量的值。而数据类型就相当于容器的类型,决定了容器能够存放什么样的值。 试想,生活中我们把小盒子里的东西放进大盒子里,是没有问题的。数据类型也是这样。我们把整型的数据赋值给浮点型是可以放进去的,放进去之后里面的值1其实也就变成了浮点型,即1.0,不过c#输出的时候,很聪明的把后面的.0去掉了。 结论:占字节小的可以向占字节大的自动转换,但占字节大的不能向占字节小的自动转换。 这种数据类型的转换是自动完成的,所以叫做自动类型转换。 如果我偏要把字节大的赋值给字节小的怎么办呢?试想,生活中我们把大盒子中...
- 下一篇
Composer 安装
简介 Composer 是一个用于 PHP 依赖管理的工具。它实现了让你声明项目所依赖的库,并帮你完成安装 / 更新过程。 依赖管理 Composer 不是像 Yum 或 Apt 一样的包管理器,虽然它会处理『包』或库,但它管理这些包、库是基于项目的,它会安装这些包、库到你项目的一个目录下(一般是在 vendor 文件夹里),默认情况下不会全局地安装。它做为一个包管理器,也支持一个叫做 " global " 的全局命令,我们可以使用此命令来安装全局的包。 这种扩展包的管理方式,不是 Composer 首创或独家专利,其实 Composer 很大程度上有受到 node 的 npm 和 ruby 的 bundler 的启发。 设想: 你有一个项目依赖数个库;某些库依赖于其他库。 Composer: 使你可以声明你所依赖的库;找到这些库所提供的和需要安装的版本,并安装它们(即下载到你的项目中)。参见 基本使用 章节获取更多关于 “依赖声明” 的内容。 系统要求 Composer 要求 PHP 版本在 5.3.2 以上才能运行。还需要对 PHP 做一些设置和编译标志,在安装时会收到所有的不兼容...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2更换Tomcat为Jetty,小型站点的福音
- CentOS8安装Docker,最新的服务器搭配容器使用
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- 设置Eclipse缩进为4个空格,增强代码规范
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8编译安装MySQL8.0.19
- SpringBoot2整合Redis,开启缓存,提高访问速度
- SpringBoot2配置默认Tomcat设置,开启更多高级功能