
tapestry
maniacbin
taypestry webgis开发
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Tapestry最新版5.1.0.5教程(五):Hello示例程序的剖析
<br />根据前面的4部分内容,我们已经了解了Tapestry的基本概念,掌握了配置、组件等内容。现在我们通过剖析Tapestry的入门示例来对Tapestry进行一个总体上认识。<br />1、web.xml<br /><web-app><br /> <display-name>app Tapestry 5 Application</display-name><br /> <context-param><br /> <!-- The only significant confi转载 2010-06-17 13:20:00 · 1073 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(三)
<br />在讲述页面之间传递值之前首先要介绍一个Tapestry的页面缓存。<br />Tapestry的一个经常被提及的就是页面的缓存,Wicket也有页面缓存,但是Wicket的页面是缓存在Session里的,缺省好像是只缓存5个页面。这一点让我对Wicket的印象打了折扣,首先,这种机制在高并发,也就是多人同时在线的时候,感觉页面缓存会占用大量资源。而Tapestry的页面缓存是在一个大池中。<br />页面缓存的优点就是提高效率,但是缺点也是比较明显的,那就是给开发实现带来了不方便。我觉得众人说的转载 2010-06-17 13:18:00 · 758 阅读 · 0 评论 -
Tapestry 最新版5.1.0.5教程(十):页面间传递多个参数
<br />在tapestry5中,在页面之间传递基本有3种方法<br />1、存放在Session中<br />2、使用@Persist进行持久化<br />3、使用页面context来传递参数。<br />其中1和2都需要将数据存放在Session中,相对来说系统的开销比较大。尤其是多用户高并发情况下,对于性能可能会有一定的影响。<br />使用页面Context来传递则需要在开发时写一些代码,增加了一些开发量,显得没有前两种方法方便。<br />第3种方法的实现是需要在页面中添加onActivate和转载 2010-06-17 13:29:00 · 768 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(七):与IBatis3的整合
<br />与现在最流行的SSH相比较,Tapestry能够完全替代其中Struts2和Spring,但是他还是需要一个ORM的框架。IBatis由于比较低的学习曲线,也受到很多人的喜爱。尤其是在IBatis3中引入了许多新的概念和想法,使用更加安全和便利。<br />本文主要介绍如何将Tapestry5.1和IBatis3进行整合。<br />简要步骤:<br />1. 准备工作<br />2. 数据库的建立<br />3. POJO的建立<br />4. IBatis相关配置文件的创建<br />5.转载 2010-06-17 13:22:00 · 594 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(二)续
<br />1、在Tapestry中,页面称之为页面模板(Page Template)。Tapestry的页面模板必须是一个Well Formed Xml,需要引入Tapestry的Xml命名空间才能使用Tapestry的组件。示例:<html xmlns:t="http://tapestry.apache.org/schema/tapestry_5_1_0.xsd"><br />2、在页面模板中可以使用表达式来获取变量的值。这种表达式在Tapestry中称之为:Expansion。<br />3、在前一篇转载 2010-06-17 13:16:00 · 617 阅读 · 0 评论 -
Tapestry 最新版5.1.0.5教程(十一):自定义组件CheckBoxGroup
我记得好像是Appfuse的作者曾经这样评价过Tapestry:只要你真正掌握了Tapestry,你的开发效率将会得到极大的提高。为什么呢?我认为他这样说的一个重要原因就是Tapestry的组件机制。Tapestry提供了非常便利的组件定义机制,随着Tapestry的组件不断积累,Tapestry的开发将会变得越来越简单。<br />本文就用一个实例来看一下Tapestry中是如何添加一个自定义组件的。<br />Tapestry的内置组件只提供了checkbox,而且只能返回一个boolean,用于表明是转载 2010-06-17 13:30:00 · 685 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(九):权限控制框架的实现-进阶篇
<br />在上一篇中我们研究了如何实现SpringSecurity中Jsp Tag的<security:authorize ifAllGranted="ROLE_SUPERVISOR">的功能。这一次我们一起研究一下如何实现在Tapestry5.1中添加一个Filter来对所有的操作进行权限的过滤控制。<br />在SpringSecurity中,我们一般是在application-context.xml中,添加一个SpringSecurity的Filter,然后在另外一个xml中详细配置如何根据Url的原创 2010-06-17 13:27:00 · 644 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(八):权限控制框架的实现-基础篇
Tapestry中并没有类似于Spring Security这样的专门的权限框架。对此Tapestry的作者Lewis认为主要是用户对于权限的要求实在太多变化了。他认为很难抽象出一个通用的权限框架来满足所有的用户,所以他干脆就不费事去做这件事了。但其实我们很容易就能利用Tapestry已有的工具来完成类似于SpringSecurity的功能。<br />本文主要介绍如何实现类似于SpringSecurity的jsp tag的功能。在Tapestry中,利用Components实现这一点非常容易。<br />转载 2010-06-17 13:24:00 · 770 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(六):核心利器-IoC容器介绍
<br />Tapestry IoC容器从历史上来说,是从从HiveMind继承发展而来,但是HiveMind和目前大红大紫的Spring都不能满足Tapestry的一些特定的需求,所以全新开发了一套IoC的容器。<br />其核心思想就是使用Java代码自身来解决依赖注入而不是由Xml之类的配置文件来完成,这和Guice的思想是非常相似的,Lewis也承认从Guice那里借鉴了不少。<br />另外需要说明一下的是,Tapesty还从中国的一个非常古老但又充满哲理的游戏--围棋中借鉴了一些术语和思想。大意转载 2010-06-17 13:21:00 · 608 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(二)
<br />1、Start.tml和Start.java<br />Tapestry不需要在Web.xml中配置welcome页面,也是使用约定大于配置的方式,默认的起始页面就是在pages目录下的Start。Tapestry中的页面由两部分组成:一个Java类和一个相同名字的模板文件(类似于jsp,Tapestry中的后缀名为:tml)。其中Java类是必须的,就算是没有任何代码,也必须要生成一个空类。tml模板在大多数情况下也是需要的,少数情况比如返回二进制流的话,可以不需要。<br />tml模板文件转载 2010-06-17 13:15:00 · 497 阅读 · 0 评论 -
Tapestry最新版5.1.0.5教程(一)
1、web.xml<br />一般来说,使用Tapestry需要在Tapestry中添加2项内容<br />A、 <context-param><br /> <!-- The only significant configuration for Tapestry 5, this informs Tapestry<br />of where to look for pages, components and mixins. --><br /> <param-name>tape转载 2010-06-17 13:10:00 · 598 阅读 · 0 评论 -
Tapestry 最新版5.1.0.5教程(十二):自定义前缀prefix
<br />在教程的第四部分(http://www.blogjava.net/usherlight/archive/2009/06/20/283396.html)我们已经粗略地介绍了Tapestry的前缀,其中提及最常用的两种literal和prop。这里顺便再介绍一下其他的几个前缀.<br />1、context,这个经常在引用图片的时候用到。比如:<img src="${context:images/icon.png}"/> 这样就能够在页面上显示在web-inf/images/icon.png<br转载 2010-06-17 13:33:00 · 580 阅读 · 0 评论