Apache Click 框架入门

原创 2012年03月21日 15:56:16

简介:

Apache Click 是一个先进的Java企业版的Web应用程序框架,提供一个基于浏览器的富客户端编程模型。非常简单和易用,一般的开发人员在一天内就可以上手使用。

基于组件设计的方法,而且进行了优化,从而更加易用。它提供了一个面向页面的设计模式、基于组件与事件的编程模型。Click包括了40多个开盒即用的组件,对应了HTML中主要的元素。这样使得编程很简单了。Click的 Forms与组件提供了自动化的验证和展现,使得FORM的开发快速且健壮。


开发环境:

jdk:1.6

IDE:MyEclipse 3.6

Tomcat:apache-tomcat-6.0.33

click包:click-2.3.0.jar


编写Click HelloWorld步骤:

1、新建web项目click-hello

2、导入包click-2.3.0.jar(核心包)。

3、配置web.xml。添加ClickServlet,代码如下

	<servlet>
		<servlet-name>click-servlet</servlet-name>
		<servlet-class>org.apache.click.ClickServlet</servlet-class>
		<load-on-startup>0</load-on-startup>
	</servlet>
	<servlet-mapping>
		<servlet-name>click-servlet</servlet-name>
		<url-pattern>*.htm</url-pattern>
	</servlet-mapping>

4、在web.xml同级目录下新建Click配置文件click.xml。如下:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<click-app charset="UTF-8">

</click-app>

这里暂时不用配置任何信息,在后面会进行配置。


5、现在开始创建页面类。创建包example.click.hello.page,在该包下创建Java类HelloWorld.代码如下:

package org.vic.click.hello;

import java.util.Date;

import org.apache.click.Page;

public class HelloWorld extends Page
{
    //声明一个私有的时间变量。  
    private Date time = new Date();
    
    public HelloWorld()
    {
        //将该时间变量添加到页面模型map里  
        addModel("time", time);
    }
}

6、创建页面helloWorld.htm,这里我们将helloWorld.htm直接放在webRoot下。代码如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
	<head>
		<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
		<title>click hello world</title>
	</head>
	<body>
		<h2>
			Hello World
		</h2>
		Hello world from Click at $time
	</body>
</html>

$time 对应HelloWorld.java、addModel("time", time)中的time


7、修改click.xml文件,确保helloWorld.htm能对应到类HelloWorld.java。在<click-app></click-app>中添加代码

<click-app charset="UTF-8">
	<pages package="org.vic.click.hello" />
	<mode value="debug" />
</click-app>
  • <mode value="debug" />声明后台日志的模式是什么,这里设置为debug级别,除此之外还有development(开发模式info)、profile(规范输出模式info)、production(生产模式warn)、trace(跟踪模式)。
  • pages有属性automapping默认为true该属性将决定是否自动映射除WEB-INF下所有page到相应的类。

8、启动tomcat,在浏览器地址中输入http://localhost:8888/click-hello/helloWorld.htm 即可看到效果,如下图所示。

注意:请把8888换成自己Tomcat的端口号。

9、工程结构如下图所示:



注意:automapping 默认为true,所以他可以省略。
如果页面模板放在web 根文件夹的子文件夹内,他关联的page 类必须放在等同命名的相对于基包的子包内,以便page 可以被
自动匹配到。上面的匹配中,页面模板security/change-password.htm 放在web 根的security 文件夹内。为使Click 正确匹配页
面模板到他的page 类, 这个类必须放在基包com.mycorp.page 的子包security 中。绝对的page 类名为
com.mycorp.page.security.ChangePassword 。

如果仅在click.xml中声明包名让Click自己去定位(automapping="true")页面对应类,则需要注意页面名称跟类名之间的关系。

页面模板名称到类名的转换有:

change-password.htm => ChangePassword
change_password.htm => ChangePassword
changePassword.htm => ChangePassword
ChangePassword.htm => ChangePassword
在自动匹配中,如果page 类无法找到,Click 将添加Page 后缀个类名(如果这个类名没有Page 后缀)并试图匹配页面模板到
这个修改后的类名。例如:

customer.htm => CustomerPage
change-password.htm => ChangePasswordPage

本示例代码下载地址:

http://download.csdn.net/detail/j2eevic/4160561

[Apache Click快速开发]开发环境配置初试

班门弄斧 Apache Click是apache基金会众多web开发框架中的一个。也可以说是基于MVC模式的开发框架。 Click是基于组件模式,而且已经包含了绝大多数web组件,因此用click...

Apache Arrow源码分析(一)——简介和框架

背景列存储在数据库领域中早已被提出,列存储数据结构在分析型事务上表现优异,大数据分析引擎,诸如Spark-SQL,Impala 均采用列存储作为其中间数据表示形式,那么Apache Arrow就是这样...

Apache的DBUtils框架学习

commons-dbutils简介commons-dbutils是Apache组织提供的一个开源JDBC工具类库,它是对JDBC的简单封装,学习成本极低,并且使用dbutils能极大简化jdbc编码的...

几种流行Webservice框架性能对比(转载、拼接)

1摘要   开发webservice应用程序中离不开框架的支持,当open-open网站列举的就有很多种,这对于开发者如何选择带来一定的疑惑。性能Webservice的关键要素,不同的框架性能上存...

Apache Click 入门实例

  • 2012年03月21日 18:10
  • 2.09MB
  • 下载

Apache click

  • 2014年07月16日 10:30
  • 23.51MB
  • 下载

Apache Camel框架入门示例

Apache Camel是Apache基金会下的一个开源项目,它是一个基于规则路由和处理的引擎,提供企业集成模式的Java对象的实现,通过应用程序接口 或称为陈述式的Java领域特定语言(DSL)来配...
  • JJasun
  • JJasun
  • 2015年04月10日 11:07
  • 1553

Apache Click整合hibernate3和spring3

  • 2011年10月31日 19:43
  • 22.89MB
  • 下载

click框架jar包

  • 2009年11月12日 13:16
  • 2.28MB
  • 下载

Apache Camel框架入门示例

Apache Camel是Apache基金会下的一个开源项目,它是一个基于规则路由和处理的引擎,提供企业集成模式的Java对象的实现,通过应用程序接口 或称为陈述式的Java领域特定语言(DSL)来配...
  • kkdelta
  • kkdelta
  • 2012年02月03日 15:42
  • 51597
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Apache Click 框架入门
举报原因:
原因补充:

(最多只允许输入30个字)