• FlexOrm


    一个Orm应该至少提供以下四个主要特性:

    1、提供CRUD操作的API。

    2、提供一种查询语言,能够直接针对类和属性的查询,比如hibernate提供hql。

    3、提供注释元数据。

    4、提供事务执行脏数据检查,延迟加载以及其它的优化功能。

    在目前所有的Air orm(airdb,airorm,flexorm等)中,目前只有flexorm实现的比较全,基本上1,3,4都实现了,第二个嘛,我看新的版本也模仿hibernate做Criteria的标准化查询。


    注意在使用flexorm的项目中,除了将flexorm.swc加在项目的libs中,还要在编译属性的编译参数上加:-keep-as3-metadata+=Table,Id,Column,ManyToOne,OneToMany,ManyToMany,Transient

    metadata+=意味着该项目除了使用sdk的metadata外,还增加Table,Id...等元数据。


    这些元数据对于我们常用hb的人,应该很熟悉,不一一介绍了。


    使用flexOrm参考代码如下:

    1、在主应用的script:

    protected var entityManager:EntityManager = EntityManager.instance;

    protected function application_creationCompleteHandler( event:FlexEvent ):void
    {
        var dbFile:File = File.applicationStorageDirectory.resolvePath( "main.db" );
        var sqlConnection:SQLConnection = new SQLConnection();
        sqlConnection.open( dbFile );
        entityManager.sqlConnection = sqlConnection;
    }
    主要是创建EntityManager,这个类是个单例模式,需要赋值sqlConnection。
    protected function savePerson():void
    {
        var person:Person= new Person();
        person.firstName = firstNameInput.text;
        person.lastName = lastNameInput.text;
        entityManager.save(person);
    }

    package
    {
        [Bindable]
        [Table( name="Person" )]
        public class Person
        {
            
            [Id]
            public var id:int; 
            [Column( name="first_name" )]
            public var firstName:String;
            [Column( name="last_name" )]
            public var lastName:String;
            
        }
    }

    文章来源:
    来源:http://www.blogjava.net/bjwulin/archive/2010/11/11/337820.html?opt=ad

    Air的Orm--FlexOrm

  • 相关阅读:
    kerberos
    BZOJ 3309 莫比乌斯反演
    Pollard_rho定理 大数的因数个数 这个板子超级快
    POJ 3171 区间覆盖最小值&&线段树优化dp
    拼题 L2-001 紧急救援 最短路计数+记录路径
    HDU 6464 权值线段树 && HDU 6468 思维题
    HDU 1394 线段树求逆序对
    [Poi2010]Bridges 最大流+二分答案 判定混合图欧拉回路
    01背包 多重背包 复习 模板
    CF 2018 Battle of Brains GYM 102062 F
  • 原文地址:https://www.cnblogs.com/-yan/p/7307200.html
Copyright © 2020-2023  润新知