欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【工作笔记】004 tapestry框架

程序员文章站 2022-04-26 18:29:40
...

tapestry框架:

一个非常非常老的框架,但是项目在用,所以在此简单学习一番。

首先来个hello word的例子:

首先新建个javaee项目,过程略

然后开始导包,需要的包如下:

【工作笔记】004 tapestry框架

将包全部导入到lib目录下。

然后在WebContent下新建两个文件:

Home.page
Home.html

在src下新建一个包,例如:

com.wxg.page

新建一个类:

Home.java

这个类继承自:BasePage

各个文件源码如下:

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.wxg.page.Home">

     </page-specification>

Home.html:

<span jwcid="@Insert" value="ognl:helloWorld" ></span>

Home.java

    public class Home extends BasePage {

        public String getHelloWorld() {
            return "Hello world ";
        }
    }

然后在web.xml中增加配置

<servlet>
        <servlet-name>app</servlet-name>
        <servlet-class>org.apache.tapestry.ApplicationServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>app</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>

然后右键项目运行,run on server

访问:http://localhost:8080/app/

输出如下:

输出 Hello Word

也就是输出getHelloWorld()的返回值。


现在来学习一下几个文件的作用:

具体作用自己也不是很清楚,大概如下:

Home.html:一个html文件用于展示,通过ongl表达式动态获取后台数据。

Home.page:连接html和java程序(Page类)的桥梁。

这个不是相当于struts的action嘛?或者相当于Controller的RequestMapping?都是把html文件与java类关联起来。

Home.java:实际处理数据的地方。

整体就是一个Page类对应一个page文件对应一个html(大概是这样)。

不过我还是觉得Thymeleaf模板引擎好用,简介方便,并且完全前后分离,可以并行开发。

导师说框架了解一下就好了,最近要换新的框架,但还不知道是什么,所以准备把Oracla sql语句多学习一下,框架就忽略一下了。

相关标签: tapestry