`
lococode
  • 浏览: 36101 次
  • 性别: Icon_minigender_1
  • 来自: sh
最近访客 更多访客>>
社区版块
存档分类
最新评论

Maven Tapestry Spring Hibernate 整合开发(三)

阅读更多
首先抱歉,几篇文章中间的间隔如此之久,一方面工作太忙,一方面也是自己开始偷懒,闲暇之余总是偷懒说自己需要休息一下,可每次总都是休息。
本来这篇文章想说说 使用Maven2 的maven2-xdoclet2-plugin 插件怎么配置生成 hibernate 的 hbm 文件的,在annotation大行其道的时候,我决定省略这一篇了。(有疑问者,可在此处发消息,^_^)。

这里说 T5 (T5.0.6) 。 T5.0.6 前几天刚刚释放出来,一只在用 5.0.5 , 6 的SNAPSHOT版本一直没有关注, 发现 Howard Lewis Ship真的是个喜欢变化的人。参见:tapestry.apache.org/tapestry5/release-notes.html。

这里列举集成配置以及些常用的组件用法,有些说教,或者过于简单,也许对有些人比较用户。

1.与spring集成

修改 web.xml 中的

xml 代码
  1. <filter>
  2. <filter-name>app<!---->filter-name>
  3. <filter-class>org.apache.tapestry.TapestryFilter<!---->filter-class>
  4. <!---->filter>

为:

xml 代码
  1. <filter>
  2. <filter-name>financeReport<!---->filter-name>
  3. <filter-class>org.apache.tapestry.spring.TapestrySpringFilter<!---->filter-class>
  4. <!---->filter>

2. Select

你可以建立你的 SelectTest.tml文件
xml 代码
  1. <select t:id="id3" t:name="name3" t:type="select" model="genericSelectModel" encoder="genericValueEncoder" value="someBean"/>
SelectTest.java 可如下
java 代码
  1. @Persist
  2. private Customer _someBean;
  3. @Inject
  4. private PropertyAccess propertyAccess;
  5. public Customer getSomeBean() {
  6. return _someBean;
  7. }
  8. public void setSomeBean(Customer _someBean) {
  9. this._someBean = _someBean;
  10. }
  11. //for Select,
  12. public SelectModel getGenericSelectModel() {
  13. return new GenericSelectionModel<customer>(getBeanList(), propertyAccess, </customer>"name");
  14. }
  15. //for select
  16. public ValueEncoder<customer> getGenericValueEncoder() { </customer>
  17. return new GenericValueEncoder<customer>(getBeanList(), propertyAccess, </customer>"id");
  18. }
  19. public List<customer> getBeanList() { </customer>
  20. _beanList = new ArrayList<customer>(); </customer>
  21. for (int i = 0; i < 10; i++) {
  22. Customer c = new Customer();
  23. c.setName("Customer Name" + i);
  24. c.setCode("Code" + i);
  25. c.setId("" + i);
  26. _beanList.add(c);
  27. }
  28. return _beanList;
  29. }
  30. public void setBeanList(List<customer> _beanList) { </customer>
  31. this._beanList = _beanList;
  32. }
GenericValueEncoder 和GenericSelectionModel 的实现方式也比较简单,可以参见
wiki.apache.org/tapestry/Tapestry5SelectObject

最后,几点注意的地方:
a) 5.0.6 的日志模块已经换成: SLF4J(Simple Logging Facade for Java) www.slf4j.org
b) 模板文件后缀换作 .tml(Tapestry Markup Language)
c) 模板文件放到web的根目录中,而不是 WEB-INF中。

分享到:
评论

相关推荐

    tapestry5.3.3+spring+hibernate整合源码

    整合Tapestry、Spring和Hibernate,开发者可以利用它们各自的优点:Tapestry的组件化开发、Spring的依赖管理和事务控制,以及Hibernate的ORM能力。这样的组合可以构建出结构清晰、易于维护且具有高度可扩展性的Web...

    Maven + Tapestry5.3.8 + Spring4.0.5 + Oracle10g

    这是Tapestry5.3.8 版本的一个大Demo,集合Spring4.0, 采用Maven 项目管理工具,没有集合Hibernate。 之所以说是个大Demo,是因为这项目中包含的内容并不少,包含: 1)解决了Tapestry5.3.8中文Bug问题 2)Tapestry...

    Tapestry5 + spring + hibernate 开发指南

    ### Tapestry5 + Spring + Hibernate 开发指南 #### I. 引言 本文档旨在为初学者提供一个基于 Tapestry5、Spring 和 Hibernate 构建 Web 应用的基础指南。项目将通过一个简单的登录页面来展示如何整合这些技术。本...

    用maven+eclispe快速搭建SSH的笔记

    本文档将详细介绍如何通过Maven和Eclipse快速搭建Struts2 + Spring + Hibernate(SSH)框架的开发环境。该文档主要面向希望快速入门SSH框架开发的新手开发者。以下是基于Tapestry5+Eclipse3.4+Maven在Windows环境下...

    Tapestry5开发文档手册.doc

    5. 框架集成:支持与Hibernate、Spring、Seam、Acegi等流行框架的无缝集成。 本文将使用Tapestry 5 创建一个CRUD(创建、读取、更新、删除)应用,展示Tapestry在页面导航、依赖注入、输入验证和状态管理等方面的...

    Maven 的41种骨架功能介绍

    Struts2是一个流行的Web开发框架,它与Spring和Hibernate的结合使得开发人员能够构建出高性能的企业级应用。 #### 4. internal-&gt;appfuse-basic-tapestry 这个骨架用于创建基于Hibernate、Spring和Tapestry4的Web...

    Tapestry5最新中文教程

    Tapestry 5 还与其他流行框架如Hibernate、Spring、Seam、Acegi等无缝集成,提供了丰富的扩展性和灵活性。通过这些集成,开发者可以利用这些框架的功能,如持久层管理、安全控制等,进一步提升应用的复杂性和性能。 ...

    tapestry5中文文档

    Tapestry 5 的优势还体现在REST风格的URL、可降级的JavaScript、不依赖XML的配置等方面,同时它支持与其他框架(如Hibernate、Spring、Seam、Acegi)的集成,增强了灵活性和可扩展性。Tapestry封装了最佳实践,旨在...

    Tapestry5开发文档.pdf

    此外,Tapestry还能与流行框架如Hibernate、Spring、Seam、Acegi等无缝集成,增强了其灵活性和适应性。 在本文档中,读者将逐步学习如何利用Tapestry 5创建一个CRUD应用,涉及的主题包括页面导航、依赖注入、资源...

    Tapestry5最新中文入门实例教程

    #### 三、Tapestry 5的关键特性详解 为了更好地理解Tapestry 5的核心功能,下面将详细介绍几个关键特性。 ##### 3.1 页面导航(Page Navigation) Tapestry 5通过定义组件之间的链接关系来实现页面导航。这种机制不仅...

    tapestry 5.3中文教程

    #### 三、Tapestry 应用开发 **1. Hello Tapestry 示例** - 在创建好的项目中,可以开始编写第一个 Tapestry 应用。 - 修改 `src/main/tapestry/my-app.xtm` 文件中的内容,以展示基本的页面结构。 - 在 `src/main...

    Tapestry5开发文档.doc

    8. **集成其他框架**:Tapestry5能很好地与Hibernate、Spring、Seam、Acegi等流行框架集成,扩展了其功能,简化了复杂系统的构建。 9. **开发环境与工具**:推荐使用Eclipse或NetBeans等IDE,它们提供了对Tapestry5...

    Tapestry5 使用教程

    #### 三、Apache Tapestry5 应用开发流程 ##### 3.1 准备工作 为了开发 Tapestry 5 应用,你需要准备以下软件环境: - **Java SE Development Kit (JDK)**:至少需要 JDK 5.0 或更高版本。 - **Servlet 容器**:...

    Spring in Action(第二版 中文高清版).part2

    A.2 把Spring添加为一个Maven 2依赖项 A.3 Spring与Ant A.4 Spring与Log4j 附录B 用(和不用)Spring进行测试 B.1 测试简介 B.1.1 理解不同类型的测试 B.1.2 使用JUnit B.1.3 Spring在测试中的角色 B.2 单元...

    Spring3.0-MVC_简单自学教程(英文)

    7. 使用Maven创建Spring 3 MVC Hibernate 3示例:演示如何在Eclipse中集成Hibernate进行数据持久化操作。 在Spring Web MVC中,你可以使用任何对象作为命令对象或表单支持对象,无需实现特定的框架接口或基类。...

    Spring MVC3。 最近研究

    7. **使用Maven在Eclipse中创建Spring 3 MVC与Hibernate 3的例子**:Spring MVC可以很好地与ORM框架如Hibernate集成。这部分将带你通过一个实战示例,学习如何在Spring MVC中配置和使用Hibernate进行数据持久化。 ...

    Spring in Action(第2版)中文版

    a.2把spring添加为一个maven2依赖项 a.3spring与ant a.4spring与log4j 附录b用(和不用)spring进行测试 b.1测试简介 b.1.1理解不同类型的测试 b.1.2使用junit b.1.3spring在测试中的角色 b.2单元测试...

    Spring in Action(第二版 中文高清版).part1

    A.2 把Spring添加为一个Maven 2依赖项 A.3 Spring与Ant A.4 Spring与Log4j 附录B 用(和不用)Spring进行测试 B.1 测试简介 B.1.1 理解不同类型的测试 B.1.2 使用JUnit B.1.3 Spring在测试中的角色 B.2 单元...

Global site tag (gtag.js) - Google Analytics