博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第一讲:hello tapestry
阅读量:5935 次
发布时间:2019-06-19

本文共 1714 字,大约阅读时间需要 5 分钟。

hot3.png

 tapestry具体的介绍,大家可以去官网了解,apache的强大大家也有目共睹。

 

     tapestry使用了组件开发模式,很大的提高了工作效率,速度也很快,特别的5.3之后版本,官方文档也很齐全可惜是全英文,英文不好的很是头疼,版本升级超级容易等等好处实在是很多啊!有兴趣的可去官网了解,编写这个教程是为了给初学着,或者没有学过程序开发又想从事程序开发的童鞋有很大的参考价值。

 

     个人简单介绍下,我并非专业计算机出身而是广美毕业,毕业后一直从事IT行业,之前在小公司写过几年的PHP,有同类经验的童鞋都知道,在小公司你会多东西越多,老板越赏识加上个人对程序开发有很大兴趣,对java也是第一次写,所以有写错的地方请大家指正、也很乐意与各位前辈交流学习、希望tapestry在国内能早日像他的兄弟框架struts那么流行。本编系列教程初定为tapestryStart,为了能正确运行案例,需要的可以仅供参考。安装方法请看。

 

      言归正传,tapestry分开发模式与产品模式(生产模式)两类,我们开发的时候使用开发模式,打包部署的时候使用产品模式。却换非常简单,只要简单设置就行了。本系列教程开发模式:tapestryX+tapestry-hibernate+mySql。在开发模式下一个页面由一个.java跟一个配对的.tml文件组成。

 

     来看下tapestry项目,官方推荐使用maven管理项目,我们之前创建的项目也是maven项目,下面我们来看下结构。如图

components存放组件的文件夹,page存放页面的文件夹,services存放服务的文件夹,默认就这3个,我们在开发中可自己增加相应文件夹,常用的有entities存放实体,until存放常用的java转换静态函数,data存放枚举,mixins混合,base可被继承的基础类等等。

 

hello tapestryStart。

在com.tapestry.app.pages下创建一个TapestryStart.java文件,在webapp下创建TapestryStart.tml文件。下面看下他们的源代码。

 

TapestryStart.java在这个文件中创建了一个私有变量hello,tapestry读写是使用get+变量名字(首字母大写)与set+变量名字(首字母大写)函数。也就是说hello读使用getHello函数、写使用setHello函数,以此类推。这里其实不用写setHello,写上是方便大家好理解。读写一起的时候可以使用简写@Property private String hello;这样的话读写都已经有了,以后会讲到。

/**
* 项目名称:TapestryStart
* 开发模式:Maven+Tapestry5.x+Tapestry-hibernate+Mysql
* 网址:
* 版本:1.0
* 编写:飞风
* 时间:2012-02-29
*/
package com.tapestry.app.pages;
 
public class TapestryStart {
 
private String hello;
 
public String getHello() {
return "hello Tapestry Start";
}
 
public void setHello(String hello) {
this.hello = hello;
}
}
 

 

TapestryStart.tm

<html t:type="layout" title="About tapestryStart"
      xmlns:t="http://tapestry.apache.org/schema/tapestry_5_3.xsd"
      xmlns:p="tapestry:parameter">
 
    <p style="color:#ff6600">${hello}</p>
 
</html>
输入http://localhost/TapestryStart 就可以看见了 

转载于:https://my.oschina.net/shootercn/blog/53407

你可能感兴趣的文章
关于闭包的几个小栗子
查看>>
libevent源码深度剖析七
查看>>
CCF201409-5 拼图(30分)
查看>>
HDU4821 String
查看>>
设计一个学生类&班级类
查看>>
响应式网页设计:互联网web产品RWD概念
查看>>
Thinkphp开源框架如何使用?
查看>>
c# 读取记事本txt文档到DataTable中
查看>>
BUAAOO第四单元总结
查看>>
java_分数
查看>>
守护线程与非守护线程
查看>>
Js中parentNode,parentElement,childNodes,children之间的区别
查看>>
JS复习:第三章&第四章
查看>>
webpack的问题;
查看>>
如何用JS获取ASP.net中的textbox的值 js获不到text值,【asp.net getElementById用法】
查看>>
ASP.NET弹出对话框几种基本方法
查看>>
正阳门下
查看>>
【01】Python:故事从这里开始
查看>>
理解Underscore中的_.bind函数
查看>>
关于目标检测 Object detection
查看>>