`
shiren1118
  • 浏览: 133927 次
  • 性别: Icon_minigender_1
  • 来自: 吉林
社区版块
存档分类
最新评论

[心得] 使用Groovy自动生成网站

阅读更多

周末忽然心血来潮,决定重建一下bestunix,为了不再出安全问题,这次决定完全使用静态页面。

基本思路是这样的:

  1. 使用crontab定期从space上面下载feed.rss
  2. 使用groovy脚本解析feed.rss,生成静态页面
  3. 每次生成的页面覆盖以前的页面。

看起来很简单,但是因为以前没有用过groovy,而且groovy又没有好的ide工具,完全使用ultraEdit来做的,大概花了一天半时间。

基本上写程序半天,做页面半天,配置服务器半天(jdk,groovy,apache)。

通 过这个小东西,基本上理解groovy的闭包了,另外对groovy的优点也有了进一步认识,进行io操作非常方便,语法习惯了以后写起来也很爽,虽然使 用ultraEdit,但因为基本上没有重复的代码,ide生成代码的功能也显得不那么重要。缺点也很明显,没有好用的ide,调试程序非常麻烦,比js 难调多了。另外就是性能太差,慢得要死,当工具来使还行,大项目上这东西还是不敢用。

做页面本身不是我的长项,花半天也是可以理解的。

配置服务器之所以要这么长时间,主要是因为编码的问题。通过iconv转换程序代码,设置apache默认编码等若干次尝试后,终于不再出乱码了。另外一个要注意的地方是groovy在linux下必须设置classpath,否则会找不到类。

现在设好以后,每次我在msn space上写了东西,bestunix上就会生成相应的静态页面了,呵呵,还是很有成就感的。

10月22日更新:

今天整理了一下程序,主要做了下面几点

  1. 程序功能分工更清晰,文件由原来的两个急剧增加到6个
  2. 增加了配置文件,适应性更好
  3. 程序和模板,生成的网站可以分离了
  4. 增加了RSS输出
  5. 增加了自动生成sitemap
  6. 修改了原来日期显示的问题

今天用了一下groovy的eclipse插件,还不错,有部分的代码自动完成功能和部分的语法检查,可以进行很简单的调试。另外一个感觉就是非常慢。

11月6日更新

  1. 重构了代码,使功能分工更清晰
  2. 增加了一个DataFactory,所有磁盘资源都只需要读取一次,减少了因为重复读取数据造成的性能问题
  3. 增加了tag的功能,使得导航更方便
  4. 解决了非utf-8环境下测试的问题
  5. 其他地方的性能也做了一些优化
  6. 网页模板改用绝对链接,这样模板文件更容易管理
  7. 程序与模板,生成的完全分离,可以在Config中指定。

11月8日更新

  1. 增加了taglist页

11月11日更新

  1. 增加了站内搜索,使用google ajax api,折腾了半天,还算好用
  2. 对上面的一级栏目做了调整,不再放分类了
  3. 修改了rss中一个链接错误

11月12日更新

  1. 终于实现分页了,确实有点麻烦,自己写了个分页类。
  2. 对网站的整体样式做了一些调整,使用大字体了,这样看着不会那么费劲。
  3. 把源代码放到 google code 上了。

TODO:

  1. 合并rss.因为网站上的rss只输出最近的几十条。内容多了就会丢失以前的数据。需要写个程序来增量合并更新的内容。
  2. 自动生成对应的繁体中文网站
  3. 根据tag自动生成专题
  4. 生成pdf
分享到:
评论

相关推荐

    springboot jpa 自动生成实体类的 文件 Generate POJOs.groovy

    springboot jpa 自动生成实体类的 文件 可以拿走直接用 Generate POJOs.groovy

    IDEA groovy生成实体解决乱码问题

    IDEA groovy生成实体解决乱码问题

    IDEA逆向生成POJO/DAO/MAPPER 《Generate POJOs.groovy》

    IDEA自带的插件Generate POJOs.groovy 比较简陋,不能生成完整的dao/mapper,切生成的POJO没有注解。没有统一格式化,所以在此基础上进行了扩展能够简单的生成pojo/dao/mapper. 使用时选择目录后会在改目录下生成...

    Java中使用Groovy的三种方式

    Grails是基于Groovy的全栈Web应用框架,它简化了MVC开发模式,提供了丰富的插件系统和自动代码生成功能。与Java的Spring Boot框架结合使用时,Groovy可以作为Spring Boot的源代码语言,提供更加简洁的配置和更快的...

    Java调用Groovy,实时动态加载数据库groovy脚本

    它继承自Java的ClassLoader,能解析Groovy源码并生成字节码。 3. 加载并执行Groovy脚本:通过GroovyClassLoader的`parseClass()`方法解析Groovy源码,然后使用`newInstance()`方法创建脚本实例,最后通过`...

    JUN SpringBoot API Service 是一个基于SpringBoot+Groovy+SQL动态生成API

    JUN SpringBoot API Service 是一个基于SpringBoot+Groovy+SQL动态生成API并动态发布,且发布后可动态执行groovy脚本及SQL脚本的API服务项目。提供在线执行动态程序脚热加载本及动态生成API并执行的功能。支持动态...

    Groovy调用Weka生成决策树

    本篇文章将重点讲解如何使用Groovy调用Weka来生成决策树。 在Groovy中调用Weka,首先需要确保你的环境中已经安装了Weka库。这通常通过Maven或Gradle等构建工具添加依赖来实现。对于Maven,可以在pom.xml文件中添加...

    groovy自动化学习

    groovy自动化测试学习文档,有助于新人在使用SOAPUI工具进行自动化测试的研究

    生成hibernate配置文件和xml的辅助类generate

    标题中的“生成hibernate配置文件和XML的辅助类generate”指的是在Java开发中使用Hibernate框架时,为了简化配置过程,开发者可能会创建一个辅助工具类,这个类可以帮助自动生成Hibernate所需的配置文件和映射XML...

    groovy入门经典,groovyeclipse 插件

    这使得Groovy成为快速开发、脚本编写以及构建自动化等任务的理想选择。 GroovyEclipse是一款强大的Eclipse插件,专门为Groovy开发者设计。它为Eclipse IDE带来了对Groovy语言的全面支持,包括语法高亮、代码提示、...

    QueryDsl自动生成QModel(注解扫描annotation-processor)

    本文详细介绍了如何使用 QueryDsl 自动生成 QModel 的过程,包括使用 `GenericExporter` 进行配置、Gradle 插件配置以及 IDEA 配置等方法。通过这些方法,开发者可以轻松地为项目中的实体类生成对应的 QModel,从而...

    Groovy在Spring中的简单使用

    Groovy 在 Spring 中的简单使用 Groovy 是一种敏捷的动态语言,用于 Java 虚拟机,可以与 Java 代码无缝集成。它的类 Java 语法对于 Java 开发人员来说很自然,且可以作为纯粹的脚本语言使用。在 Spring 中动态使用...

    groovy脚本实现对数据库的增删改查

    在IT行业中,Groovy常被用于快速开发、脚本编写以及自动化任务,尤其在处理数据库操作时,其简洁的语法使得数据库的增删改查(CRUD)变得更加高效。 在“groovy脚本实现对数据库的增删改查”这个主题中,我们将深入...

    GenerateForMybatisPlus.groovy

    这些过程都是繁琐而重复的,于是想通过逆向生成的方式,自动通过数据表,可以逆向生成相关的单表CRUD代码,IDEA上找了几个插件,都不太适合我,生成的东西还是得改。于是自己写了个Groovy脚本来生成 演示文章链接:...

    groovy学习

    在Java生态系统中,Groovy常用于构建脚本、自动化任务、测试以及Spring框架的应用开发。 这篇名为“groovy学习”的博文可能是关于Groovy语言的基础知识、语法特性以及在实际项目中的应用。虽然没有提供具体的博文...

    groovy和Java相互调用1

    在给出的例子中,创建了一个`Random`对象并使用它生成一系列随机整数。 描述中提到的Groovy调用Java的过程是“无缝”的,这意味着Groovy对Java API的集成非常紧密,使得开发者可以自然地在Groovy中使用Java的功能。...

    Groovy安装以及简单使用

    这篇博客“Groovy安装以及简单使用”将引导我们了解如何安装Groovy,并展示其基本用法。 首先,安装Groovy涉及几个步骤。用户需要下载最新版本的Groovy发行版,可以从Groovy官方网站...

    eclipse安装groovy插件的步骤

    1. **下载 GroovyEclipse.zip 文件**:访问 Groovy 的官方网站或 GitHub 仓库获取最新版本的 GroovyEclipse.zip 文件。确保选择与您的 Eclipse 版本兼容的插件版本。 2. **解压 GroovyEclipse.zip 文件**:将下载的...

Global site tag (gtag.js) - Google Analytics