Guzz入门教程

Guzz入门教程在本教程中 我们将手把手的演示如何使用 guzz 编写一个可以并行使用 5 台甚至更多数据库的留言板系统 您可以一边看一边跟着做 在实际的教程做 只需要 1 台数据库用来模拟 本教程将教会你 如何创建 guzz 项目 如何用 guzz 添加数据库记录 如何实现读写分离 如何进行多数据库之间分表

大家好,我是讯享网,很高兴认识大家。

在本教程中,我们将手把手的演示如何使用guzz,编写一个可以并行使用5台甚至更多数据库的留言板系统。

您可以一边看一边跟着做。在实际的教程做,只需要1台数据库用来模拟。

本教程将教会你:如何创建guzz项目,如何用guzz添加数据库记录,如何实现读写分离,如何进行多数据库之间分表、切表、分布式切表等,并对“服务”有个概念。

什么是guzz?什么时候用?

guzz[ˈɡuzi]念做谷子。稻谷的谷,意为种子、谷物等。

guzz和hibernate,ibatis同属于数据持久层框架,在应用架构上用于代替hibernate或者ibatis。使用guzz后,传统的ssh(spring + struts + hibernate)程序就变成了ssg(spring + struts + guzz)。同时guzz也可以和hibernate/ibatis并存,同时使用。

guzz适合于大型系统使用,包括访问量较大的系统和数据量较大的系统。当你的程序需要同时使用多台数据库,或者存在大表需要分切成小表时,guzz是目前通用持久层框架中最好的选择。guzz提供了面向未来的配置化分表、多库、表分切、读写分离,以及多台数据库之间透明的分布式事务支持等特性,使得多数据库编程和普通编程一样简单,对开发者透明。

同时guzz提供一些服务定义,帮助团队从零开始创建云服务计算平台。如果您计划将多个系统间的通用计算(功能)做成服务,并且还没有动手,guzz service将是个很好的起步点。

guzz框架免费开源,项目地址:http://code.google.com/p/guzz/


讯享网

准备开发环境

在本教程中,我们使用MyEclipse IDE做开发演示。留言板将运行在1台Mysql5.0 + 1台Tomcat6上。因此您只需要自己的开发机器就可以跟上。

当然,如果你有5台或者更多数据库,会更好。

虽然教程中只有1台数据库,但效果一样。你可以更清楚的看到,guzz使用多台数据库还是只用1台数据库,对开发者基本透明。

创建MessageBoard工程

我们基于 springIOC + springMVC + guzz 架构创建留言板,因此先从guzz网站下载提供的空工程 a empty sample project buildxxxxxxx.zip :http://code.google.com/p/guzz/downloads/list

解压工程,并导入到Eclipse中(File -> Import -> General/Existing Projects into Workspace)。 这时工作区中多了一个名为“GuzzEmpty”的项目。选择项目,右键 -> Refactor -> Rename。输入MessageBoard,确定。

从 http://code.google.com/p/guzz/downloads/list 下载最新版的guzz发布包,如“guzz1.2.9 buildxxxxxx.zip”,解压文件,将最新的guzz.jar覆盖到刚刚创建的MessageBoard工程的 /WebRoot/WEB-INF/lib/ 下。

修改 /WebRoot/WEB-INF/ 下的 fms.properties 为 messageBoard.properties ,这个为我们的主配置文件。

配置工程,插入第1条留言

配置工程

我们定义留言为Message,在src源代码目录下创建域对象example/business/Message.java:

 1 package example.business;  2  3 import java.util.Date;  4  5 public class Message implements java.io.Serializable {  6  7 private int id ;  8  9 private String content ; 10 11 private Date createdTime ; 12 13 public int getId() { 14 return id; 15  } 16 17 public void setId(int id) { 18 this.id = id; 19  } 20 21 public String getContent() { 22 return content; 23  } 24 25 public void setContent(String content) { 26 this.content = content; 27  } 28 29 public Date getCreatedTime() { 30 return createdTime; 31  } 32 33 public void setCreatedTime(Date createdTime) { 34 this.createdTime = createdTime; 35  } 36 37 }

讯享网
小讯
上一篇 2025-03-29 15:43
下一篇 2025-01-06 17:18

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/125562.html