由于要维护一个项目,要用到tapestry3这个老框架,虽然这个框架很老,但是在我看来ta的思想还是很先进的---面向组件编程。
由于网上资料少的可怜,辛苦找了很久终于找到一本名为《tapestry in action》的工具书,以下学习笔记均以此书为参考。
正文---tapestry初探 tapestry in action 第一章学习笔记
tapestry是一款以组件为核心的开发框架,组件就向一个黑盒子,我们无需关系组件是如何实现的,只需合理使用即可。这有点像jquery的插件,我们无需关心插件是如何实现,只要传给它正确的参数即可。而且还能自己动手开发新组件,随着组件的越来越多,开发会越来越快,越来越顺手,这种能提升开发效率的框架,个人还是第一次遇到。
tapestry相对于传统的jsp开发还有一个好处就是,它可以直接将组件镶嵌到html代码中,而不需要将前端人员做的html转换为jsp代码(虽然这种落后的开发方式现在几乎没有)。
按照惯例,来个helloword。
ps:新建javaweb项目等等这些大家都知道的就不在赘述。
1.引入包 ,已分享网盘http://pan.baidu.com/s/1c19a5qC
2.在WebContent下创建Home.html
仅需一行 代码如下:
1 <span jwcid="@Insert" value="ognl:helloWorld" ></span>
3.在WEB-INF 下创建Home.page文件
代码如下
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE page-specification PUBLIC
"-//Apache Software Foundation//Tapestry Specification 3.0//EN"
"http://jakarta.apache.org/tapestry/dtd/Tapestry_3_0.dtd">
<page-specification class="com.tapestry3.page.Home">
</page-specification>
4.新建包com.tapestry3.page,并创建Home.java
代码如下
package com.tapestry3.page;
import org.apache.tapestry.html.BasePage;
public abstract class Home extends BasePage{
public String getHelloWorld(){
return "Hello world";
}
}
5.将项目加入servlet容器内运行 (我用的是tomcat)
浏览器输入http://localhost:8080/MyTapestry3/app 。
至此一个tapestry helloword就做完了