Jekyll 使用Liquid 模板语言供用户调用。jekyll在生成静态页面时,优先处理liquid语法,即把liquid模板的值替换模板变量,比如{{ site.title }}
会替换成_config
里的title
值。这样就产生一个问题,有时需要代码高亮liquid语法,如果像平常高亮java语法一样处理,liquid语法变量会被赋值。比如我要高亮url:{{ site.title }}
,结果却高亮成了url:陈开华博客
。Liquid考虑到这种情况,使用{% raw %}
标签处理替换问题。
使用Ebean ORM
有个麻烦的地方,就是每次部署app前,需要enhance
下entity
类的class文件,所谓enhance
,就是加强操作,用于修改实体bean,包括”编织“,”转换“,”字节码操作“等过程。如果没有enhance
就使用ebean orm,则ebean会抛出异常。Ebean ORM
提供了eclipse插件、idea插件、maven插件、ant等解决方案,虽然没有gradle插件支持,不过好在gradle支持ant任务,通过gradle调用ebean提供的ant target,完成编译后自动enhance
操作。
Ebean ORM
是一个使用纯Java实现的开源ORM框架。 Bean使用JPA注释对实体进行映射。Ebean力求让使用最简单的API帮助开发者从数据库获取有用的数据信息。Ebean ORM
是轻量级框架,他支持源生sql、分页、大数据查询、批量插入、数据加密、json实用功能。Ebean ORM
还支持与spring等框架集成,Ebean orm
与spring集成后,ebean事物交给spring全局管理,省去了不少麻烦。但是官方文档对这部分一笔带过,我初次看文档时一头雾水,就是官方demo也过时有点错误,因此我选择了目前比较新版的Ebean ORM
与spring
集成。
gradle是目前java应用最强大的自动化构建工具。gradle以groovy语言基础,基于DSL(领域特定语言)语法。因为基于groovy,所以java能做的事情,gradle都能做。由于gradle基于DSL语法,因此在配置gradle时,非常简洁灵活。
上面说了,gradle基于groovy语言,groovy又基于java,因此gradle无所不能。项目开发时,要在本地环境调试应用,涉及到数据库的初始化等步骤,技术难度不大,却要花费些时间。gradle完全可以帮助我们初始化数据库。
使用linux时经常需要获取硬盘分区信息、容量大小,文件大小等信息。linux提供了df
du
等命令提供上述信息。经常在linux下需要开机挂载硬盘分区,linux提供了简单的解决方法。