方法1:在<display:column>中使用属性autolink="true",不过这条属性只对两种情况起作用:网址和邮箱,如果只是普通字符串,那么还是普通字符串,不会变成超链接
          网址必须是以http://开头的,而不是直接写www.baidu.com。邮箱就是完整的邮箱名
方法2:在<display:column>中使用url属性或者href属性,两者区别是:url是主机名/项目名/url,而href是主机名/href。也就是少了项目名。
          同时还有几个配置属性:(缺点是参数值必须使用bean的属性,而不能是字符串直接量,并且属性名不能有错,而且只能配置一个参数,这个限制太要命了)
          paramId: 就是参数名称,后台根据它来getParameter()
          paramProperty: 就是参数值,不过不是字符串直接量,而是bean的属性名,也就是表格的列名
          paramName: 默认值是null,就是当前bean,没试过指向其他bean......一般也用不到吧
          paramScope: 默认值是null,还是指当前bean,没试过指向其他bean......一般也用不到吧
方法3:使用Decorate装饰模式,具体又分为两种情况:
          情况一:继承org.displaytag.decorator.TableDecorator父类
                     继承父类之后我们没有必须要实现的父类方法,但是我们获得了一个父类提供的方法:getCurrentRowObject()
                     显然该方法返回当前行的bean对象。接下来我们要做的就是提供getXXX()方法,这个get方法后的值一般与bean的属性名对应
                     虽然不要求与属性名一样,但是在jsp页面中使用的时候,<display:column property="XXX">这个property属性就需要与我们实现的getXXX方法一致
                     最好就是与属性名一样,这样不至于弄错
                     在jsp页面中使用的时候,将我们的类全名给table的decorator属性,也就是包括包名和类名赋值给<display:table>的decorator属性

 public String getSchool() {
Student s = (Student)getCurrentRowObject();
String school = s.getSchool();
//注意:下面的超链接中href必须以 http:// 开始,否则就变成 主机名+项目名+url了,就不是跨域跳转了
return "<a href='http://www.baidu.com?action=" + school + "' target='_blank'>" + school + "</a>";
}

情况二:实现org.displaytag.decorator.ColumnDecorator接口
                     实现decorate方法,返回字符串,该字符串就是该列的值,该方法的参数就是没有被装饰过的原始值
                     我们要做的就是对原始值进行装饰,返回我们希望的结果,一般我们会返回一个超链接,来实现譬如增加,删除的操作
                     在jsp页面中使用的时候,将我们的类全名给column的decorator属性,也就是包括包名和类名赋值给<display:column>的decorator属性

 public String decorate(Object arg0) throws DecoratorException {
return arg0 + " be decorated!";
}

总结:方法一最简单,但是基本上用处不大,因为网页上一般不会直接显示网址和邮箱地址,一般应该会显示网址名称或者邮箱名等。(邮箱地址还是可能会出现。。。)
        方法二最大的缺点就是只能提供一个参数,而且还不能是一个字符串常量,必须是一个bean的属性值
        方法三最强大,其中情况一优于情况二:
                因为对于情况一,每个bean只需要一个类就搞定了,对于每个属性提供一个getXXX()方法即可,而情况二对于每一个属性都需要提供一个类了,
                好像也不会对每一个属性进行装饰。。。
                主要是因为ColumnDecorator接口已经快被舍弃了,现在应该使用DisplaytagColumnDecorator接口了

displaytag 添加超链接的更多相关文章

  1. C#在excel中添加超链接

    1.新建一个项目 2.给项目添加引用:Microsoft Excel 12.0 Object Library (2007版本) using Excel = Microsoft.Office.Inter ...

  2. TextView 中添加超链接

    在textView添加超链接,有两种方式,第一种通过HTML格式化你的网址,一种是设置autolink,让系统自动识别超链接,下面为大家介绍下这两种方法的实现   代码如下:    第一种    pu ...

  3. android textView 添加超链接(两种实现方式)

    在textView添加超链接,有两种方式,第一种通过HTML格式化你的网址,一种是设置autolink,让系统自动识别超链接,下面为大家介绍下这两种方法的实现 在textView添加超链接,有两种方式 ...

  4. Flex4 中<s:Datagrid>、<mx:Datagrid>添加超链接的完整方法

    <s:Datagrid>的添加超链接方法(链接文字会重叠) <s:GridColumn dataField="_fileName" headerText=&quo ...

  5. 给TextView添加超链接的四种方式

    因为在上上篇博客中介绍了SpannableString的使用(SpannableString使用详解),由此想到给TextView添加超链接究竟有多少种方式?经过个人总结,现在一共发现四种,如果还有其 ...

  6. Android(java)学习笔记147:textView 添加超链接(两种实现方式,,区别于WebView)

    1.方式1: LinearLayout layout = new LinearLayout(this); LinearLayout.LayoutParams params = new LinearLa ...

  7. Django编写RESTful API(五):添加超链接提高模型间的关联性

    前言 在第四篇中,加入了用户模型,以及相关的认证和权限的功能.但是我们在使用的时候,会发现在访问http://127.0.0.1:8000/users/时看到的用户列表,不能够直接点击某个链接然后查看 ...

  8. C#/VB.NET对EXCEL图片添加超链接

    在日常工作中,在编辑文档时,为了方便自己或者Boss能够实时查看到需要的网页或者文档是,需要对在Excel中输入的相关文字进行超链接,那么对于一些在Excel中插入的图片我们该怎么实现超链接呢,下面给 ...

  9. Java 在PDF 中添加超链接

    对特定元素添加超链接后,用户可以通过点击被链接的元素来激活这些链接,通常在被链接的元素下带有下划线或者以不同的颜色显示来进行区分.按照使用对象的不同,链接又可以分为:文本超链接,图像超链接,E-mai ...

随机推荐

  1. Android常用URI以及URI简介

    Android常用URI android管理联系人的URI: ContactsContract.Contacts.CONTENT_URI 管理联系人的Uri ContactsContract.Comm ...

  2. Android的消息处理机制(Looper,Handler,Message)(转)

    Handler Handler的定义: 主要接收子线程发送的数据,并用此数据配合主线程更新UI. 当应用程序启动时,Android首先会开启一个主线程(也就是UI线程),主线程为管理界面中的UI空间进 ...

  3. Ubuntu 10.04启动进入命令行模式

    进终端先  运行 sudo gedit /etc/default/grub  找到 GRUB_CMDLINE_LINUX_DEFAULT=”quiet splash”  改为 GRUB_CMDLINE ...

  4. Python自动化运维之10、模块之json、pickle、XML、PyYAML、configparser、shutil

    序列化 Python中用于序列化的两个模块 json     用于[字符串]和 [python基本数据类型] 间进行转换 pickle   用于[python特有的类型] 和 [python基本数据类 ...

  5. Asp.net Core 缓存 MemoryCache 和 Redis

    Asp.net Core 缓存 MemoryCache 和 Redis 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 经过 N 久反复的尝试,翻阅了网上无数的资料,GitH ...

  6. rsync同步目录及同步文件

    最简单的只读同步工作. 一,服务端的配置 1,安装rsync(阿里云默认已有此程序) 略 2,生成文件rsyncd.conf,内容如下: #secrets file = /etc/rsyncd.sec ...

  7. Basic Printing Architecture

    https://blogs.technet.microsoft.com/askperf/2007/06/19/basic-printing-architecture/ Printer sharing, ...

  8. 百度贴吧的网络爬虫(v0.4)源码及解析

    更新:感谢评论中朋友的提醒,百度贴吧现在已经改成utf-8编码了吧,需要把代码中的decode('gbk')改成decode('utf-8').   百度贴吧的爬虫制作和糗百的爬虫制作原理基本相同,都 ...

  9. 远程连接mysql

    win系统下,连接别人的mysql或者让别人链接自己的mysql: 打开命令行cmd 进入mysql: mysql -u root -p mysql>use mysql;  mysql>s ...

  10. js-权威指南学习笔记4

    第五章 语句 1.在JS中没有块级作用域,在语句块中声明的变量并不是语句块私有的. 2.尽管函数声明语句和函数定义表达式具有相同的函数名,但二者仍然不同.两种方式都创建了新的函数对象,但函数声明语句中 ...