`
沙舟狼客
  • 浏览: 161663 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

grails学习之自定义标签

阅读更多

1、在grails项目结构中有一个taglib文件夹(项目名/grails-app/taglib)

2、输入命令create-tag-lib

3、标签文件后缀名约束是TagLib(即:XXXTagLib),这里我新建的的为FormatTagLib

4、下面是我定义的就是格式化日期用的,好多项目中存时间格式是yyyyMMddHHmmss,但是直接显示的页面上对用户很不友好,所以格式化为yyyy年MM月dd日 HH:mm:ss

import java.text.SimpleDateFormat

class FormatTagLib {
   static namespace = "topca"
   def dateFormat={attr,body->
       if(attr.dateString){
            if(attr.dateString==~/^\d{14}$/){
                SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
                try{
                    out<<sdf.parse(attr.dateString).format("yyyy年MM月dd日 HH:mm:ss");
                }catch(Exception e){
                    out<<attr.dateString;
                }
            }else{
                out<<attr.dateString;
            }
       }
   }
}

 5、代码解释

  1. namespace:命名空间,可以不写,默认的是<g:XXX,如果你写了就用你的
  2. dateFormat:标签名称,如我的就是<topca:dateFormat .................
  3. attr:标签属性的集合,attr.xxxxxx
  4. body:标签的身体,比如下面代码
  5. <g:if test="${1==1}">
        <div>
            dispay
        </div>
    </g:if>

          其中<div></div>就是身体

    6.out:相当于response.getWriter().print()就是向页面中输出内容

6、标签的使用:直接在gsp页面中写即可,不用再像jsp,不用写标签库的引用

<topca:dataFormat dateString="20121221000000"/>
 

 

2
2
分享到:
评论

相关推荐

    Grails学习记录

    【标题】:“Grails学习记录” 【描述】:在学习Grails的过程中,我们可以发现这是一个基于Groovy语言的、用于构建Web应用的开源框架。通过博文链接(https://loven-11.iteye.com/blog/544143)我们可以获取到作者...

    grails学习

    Grails 允许自定义不同组件的日志级别,例如: - `'org.codehaus.groovy.grails.web.servlet'`:控制器 - `'org.codehaus.groovy.grails.web.pages'`:GSP 页面 - `'org.codehaus.groovy.grails.web.sitemesh'`...

    grails-用户手册

    GSP支持标签库,可以创建自定义的可重用组件。 七、URL Mapping Grails的URL映射非常灵活,可以在`UrlMappings.groovy` 文件中定义,使URL更加语义化,便于SEO优化。 八、构建与部署 Grails使用Gradle作为构建...

    grails中文入门简介

    文档涵盖了从安装、配置、Web开发、服务层、测试、国际化、安全到插件使用等多个方面的详细介绍,是Grails新手学习的宝贵资料。通过这份文档,开发者可以系统地学习Grails框架,并在实际开发中快速应用所学知识。

    Groovy轻松入门—Grails实战基础篇

    GSP标签库是另一大特色,可以方便地创建自定义标签,提高代码复用。 5. **GORM与数据持久化**:GORM是Grails对ORM的实现,它自动处理数据库连接和对象映射。通过领域类,开发者可以以面向对象的方式操作数据库,如...

    grails 文档

    GSP(Groovy Server Pages)支持自定义标签库,使得视图层逻辑更加清晰,同时提供了内置的标签,如`g:form`、`g:each`等,简化HTML的编写。 总结,Grails框架以其高效开发、丰富的插件、强大的ORM和简洁的语法,...

    Grails入门指南中文第二版.pdf

    9. **Grails视图(Views)**:使用GSP(Groovy Server Pages)进行页面渲染,理解标签库(Tag Libs)的概念和自定义标签的创建。 10. **Grails测试**:了解单元测试、集成测试和功能测试,以及使用Spock框架编写...

    Grails基础教程.pdf

    NetBeans是官方推荐用于Grails开发的IDE之一,它提供了强大的代码编辑、调试及部署功能,极大地提升了开发效率。 #### 二、Groovy动态语言 **2.1 介绍** Groovy是一种基于Java平台的动态语言,它与Java语法兼容,...

    Grails plugin: Calendar

    1. **集成易用**:Grails插件设计的目标之一就是易于集成到现有项目中。"Calendar"插件应该提供简单的方法,使得开发者可以快速地在他们的应用程序中添加一个交互式的日历组件。 2. **模板和样式**:插件可能包含了...

    Grails完全入门课件附带视频下载地址

    嗯,工作使用 以前有过groovy的开发,时间隔得久了些有些生疏 ...标签,自定义标签 。。。。完善中,课程内容看:课件PDF 因为学习时间段,经验欠缺。若有错误请大家谅解 我想针对初学者入门是很有帮助的

    Grails技术精解与web开发实践2-10章

    8. **插件系统**:介绍Grails强大的插件生态系统,如何查找、安装和使用插件,以及如何创建自定义插件,扩展Grails的功能。 9. **测试**:讲解Grails的测试框架,包括单元测试、集成测试和功能测试,以及如何编写...

    grails-1.3.7

    标签 "grails" 明确指出了主题内容,表明讨论的是 Grails 框架及其相关的技术。 至于压缩包内的 "grails-1.3.7" 文件,通常包含以下组成部分: - `bin` 目录:包含了可执行脚本,如启动 Grails 控制台的 `grails` ...

    Grails基础教程

    - **通过报告式投影查询创建标签云**:通过实际案例演示了如何使用投影查询来生成标签云。 - **直接使用HQL**:讲解了如何直接使用Hibernate查询语言(HQL)来进行复杂的查询。 **6.4 引导引用数据** - **引用数据**...

    Ajax Development With Grails Dojo

    - **自定义编码**:使用Dojo时,通常需要在JavaScript中编写自己的代码来实现具体功能,而非仅仅依赖于特定的标签。 #### 七、学习路径 为了更高效地学习Grails与Dojo的集成开发,建议按照以下路径进行: 1. **入门...

    Grails 1.1 的动态编码方案(Dynamic Encoding Methods)

    Grails允许开发者创建自定义标签库,这些标签可以包含复杂的业务逻辑和视图渲染。例如,你可以定义一个`&lt;g:formatDate&gt;`标签,它可以根据传入的时间戳动态地格式化日期。这种动态编码能力使得开发者能够创建可复用的...

    Grails1.3.7-doc

    - **Builders**:如GSP(Grails Server Pages)和Tag Libs,它们简化了视图层的开发,GSP结合了HTML和Groovy,而Tag Libs允许自定义可重用的HTML标签。 - **Grails Plugins**:Grails的插件系统极大地扩展了框架的...

    grails中文使用手册

    GSP还支持标签库,可自定义复用的UI组件。 7. **URL映射**:Grails的URL映射功能允许开发者定义直观、友好的URL结构,增强用户体验。通过配置,可以将URL直接映射到控制器的特定动作。 8. **命令行工具**:Grails...

    grails 入门大全

    - Grails 的强大之处在于其丰富的插件生态,通过安装插件可以快速添加新功能,如缓存、安全、RESTful API等。 - 插件的使用极大地减少了重复工作,提升了开发速度。 4. **GRAILS CLI(命令行工具)** - 使用...

Global site tag (gtag.js) - Google Analytics