前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >博客项目Tale思维导图,让项目不再难懂

博客项目Tale思维导图,让项目不再难懂

作者头像
java思维导图
发布2018-03-15 16:52:04
1.4K0
发布2018-03-15 16:52:04
举报
文章被收录于专栏:java思维导图java思维导图

写在前面

这次介绍的这个博客项目可以说有点另类,因为它使用的技术大部分都不是主流的技术,从前端到后端框架再到数据库的选择。当然,麻雀虽小但五脏俱全。技术的运用需要学会变通,大家在学习的过程中可以对比着学习,与主流的框架技术相比找优缺点,这样才会加深你对一个项目或框架运用的理解,为你以后搭建框架和学习框架思想都有好处。

Tale官方简介

博客Tale使用了轻量级 mvc 框架 Blade 开发,默认主题使用了漂亮的 pinghsu。

特性
  • 设计简洁,界面美观
  • Markdown 文章发布
  • 自定义文章链接
  • 支持多主题
  • 支持插件扩展
  • 支持 Emoji 表情
  • 支持网易云音乐播放
  • 支持附件和数据库备份
  • 部署简单,不依赖 Tomcat
  • 无需数据库,内嵌 Sqlite

1、tale项目简介.png

2、技术介绍.png

3、项目结构.png

6、项目讲解.png

Tale项目git

https://git.oschina.net/biezhi/tale/

Tale项目wiki

https://github.com/otale/tale/wiki

Tale演示地址

https://tale.biezhi.me/

Blade MVC 框架简介

blade 借鉴了很多优秀mvc框架的设计,它是为java开发人员提供的便捷易用快速上手的一款框架,你可以用它快速开发API、Web 及后端服务等各种应用。 它提供了非常多的功能,内置ioc、rest路由,视图渲染,json返回,统一配置,aop,非orm的jdbc操作等等。框架对外提供很多扩展接口,支持开发者使用自己喜欢的,比如模版引擎。

有关blade mvc框架的原理还需要你们自己去看官方文档啦。

blade mvc整体设计.jpg

特性
  • 轻量级。不依赖更多的库,摆脱SSH的臃肿,模块化设计,使用起来更轻便!
  • 模块化(你可以选择使用哪些组件)
  • Restful风格的路由接口
  • No Orm (Active Record方式玩转数据库操作)
  • 模板引擎支持
  • 非web方式开发和发布
Blade MVC 框架git地址

https://github.com/biezhi/blade

Blade MVC 框架官方文档

http://bladejava.com/

Blade MVC 框架官方api文档

http://bladejava.com/apidocs/

jetbrick-template模板技术

jetbrick-template 是一个新一代 Java 模板引擎,具有高性能和高扩展性。 适合于动态 HTML 页面输出或者代码生成,可替代 JSP 页面或者 Velocity 等模板。 指令和 Velocity 相似,表达式和 Java 保持一致,易学易用。

4、Tale项目中用到的模板标签与函数.png

官方的模板渲染流程举例

模板userList.html

代码语言:javascript
复制
#define(List<UserInfo> userlist)<table>
 <tr>
   <td>序号</td>
   <td>姓名</td>
   <td>邮箱</td>
 </tr>
 #for (UserInfo user : userlist) <tr>
   <td>${for.index}</td>
   <td>${user.name}</td>
   <td>${user.email}</td>
 </tr>
 #end</table>

流程:

  1. 创建自定义配置的 JetEngine 对象。推荐使用单例模式创建。
  2. 根据模板路径,获取一个模板对象 JetTemplate。
  3. 创建一个 Map<String, Object> 对象,并加入你的 data objects。
  4. 准备一个待输出的对象,OutputStream 或者 Writer。
  5. 根据你的 data objects 来渲染模板,并获得输出结果。

代码实现:

代码语言:javascript
复制
// 创建一个默认的 
JetEngineJetEngine engine = JetEngine.create(); 
// 获取一个模板对象
JetTemplate template = engine.getTemplate("/sample.jetx");
// 创建 context 对象
Map<String, Object> context = new HashMap<String, Object>();
context.put("user", user);
context.put("books", books);
// 渲染模板
StringWriter writer = new StringWriter();
template.render(context, writer);
// 打印结果
System.out.println(writer.toString());
jetbrick-temlate模板git地址

http://git.oschina.net/sub/jetbrick-template

jetbrick-template官方文档地址

http://subchen.github.io/jetbrick-template/2x/overview.html

SQLite

SQLite 是一个开源的嵌入式关系数据库,实现自包容、零配置、支持事务的SQL数据库引擎。 其特点是高度便携、使用方便、结构紧凑、高效、可靠。

5、SQLite介绍.png

sqlite3的sql语法与mysql的基本的增删改查语句基本相同。

运行了Tale项目并安装之后,项目的根目录下会有个SQLtite的数据库文件tale.db,这个就是项目的数据库文件了。查看数据库也简单,切换到项目的根路径下打开命令行 ,输入sqlite3 tale.db相当于mysql的use database。根据sqlite3的语法,可以使用sql语句操作。

查看sqlite数据库.jpg

图中.table想当于show tables

写在最后

如果你只用过jsp作为视图的话,可能对模板技术不是特别熟悉,建议可以先去了解一下主流的模板技术Velocity之后再和这个项目做对比。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-04-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 java思维导图 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 特性
  • Tale项目git
  • Tale项目wiki
  • Tale演示地址
  • 特性
  • Blade MVC 框架git地址
  • Blade MVC 框架官方文档
  • Blade MVC 框架官方api文档
  • 官方的模板渲染流程举例
  • jetbrick-temlate模板git地址
  • jetbrick-template官方文档地址
相关产品与服务
数据库备份服务
数据库备份服务(Database Backup Service,简称 DBS)是为用户提供连续数据保护、低成本的备份服务。数据库备份拥有一套完整的数据备份和数据恢复解决方案,具备实时增量备份以及快速的数据恢复能力,它可以为多种部署形态的数据库提供强有力的保护,包括企业 IDC 数据中心、其他云厂商数据库及腾讯公有云数据库。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档