`

air的ORM工具,FLEX中的Hibernate

    博客分类:
  • air
阅读更多
   今天在网上搜索到一个不错的基于AIR和SQLite数据库的工具,用它操作数据库很方便,而且实体类映射只需要配置很少东西,关系映射以默认约定代替映射,特来共享一下,SVN地址:http://air-activerecord.googlecode.com/svn

   上面直接有例子工程,不过只演示一两个功能,我稍微看了一下,试了试一对多关系配置、保存、查询等,都可以。

    测试代码
var org : Organization = new Organization();
TableCreator.updateTable(org);
org.name = "研发部";
org.created = new Date();
org.save();
var u1 : User = new User();
TableCreator.updateTable(u1);
u1.age = 26;
u1.name = "苍鹰1";
u1.birthday = new Date();
org.users.push(u1);
u1 = new User();
u1.age = 27;
u1.name = "苍鹰2";
u1.birthday = new Date();
org.users.push(u1);
org.saveUsers();
var parent : Organization = u1.loadOrganization();
var items : Array = org.findAll("name=?",["研发部"]);


其中两个涉及的组织类定义
package
{
	import flight.db.activeRecord.ActiveRecord;
	
	[RelatedTo(name="users", className="User", multiple)]
	public dynamic class Organization extends ActiveRecord
	{
		public var name:String;
		public var created:Date;
		public var modified:Date;
		public var users : Array = new Array();
	}
}


用户类定义
package
{
	import flight.db.activeRecord.ActiveRecord;
	
	[RelatedTo(name="organization", className="Organization")]
	public dynamic class User extends ActiveRecord
	{
		public var organization_id:uint;
		public var name:String;
		public var age:Number;
		public var birthday:Date;
		public var modified:Date;
	}
}


其他没研究得太深,欢迎有兴趣朋友共同探讨。
分享到:
评论
2 楼 eyking 2011-12-10  
你好,我也在研究这个东西,有很很多搞不清楚,不知可以分享下不,vbsa4210@126.com
1 楼 lgdlgd 2010-05-29  
用了一个星期,发现一堆的BUG,都不知道有没有人真实的用到项目中,不过还好,改这些BUG都不是很费劲,改完都可以发个新版了...

相关推荐

Global site tag (gtag.js) - Google Analytics