Atitit.ati orm の設計とアーキテクチャの概要は java c# php バージョンに適しています
Atitit.ati orm の設計とアーキテクチャの概要 は java c# に適していますphpバージョン
1
。1.1。 1
1 .2 .Hb のapi(meger,save,update,del)1
2オームの概念 1
3。ニュースobj2
4>
saveOrUpdate 後のオブジェクトは、データベースと同期され、再度クエリを実行すると、セッションから直接取得されます。マージされたオブジェクトは再度クエリに含まれません。 . 休止状態の場合、そのオブジェクトには一時的な 3 つの状態があります。 、persistent、detached 一般的な翻訳方法は次のとおりです: transient: 一時的または自由な状態 persistent: 永続的な状態 detached: デタッチ状態またはフリー状態 デタッチ状態のインスタンスは save( )、永続化のためのpersist()またはsaveOrUpdate()メソッド。 永続化とマージ: データベースと同期されません 保存と更新: 処理されたデータは永続的な状態になります。つまり、データベースと同期するために SQL が呼び出されます。 一般に、長時間のトランザクション処理には永続化とマージを使用する必要があります。データベース インタラクションを減らす 著者:: 老Wow的paw Attilax Ai Long さん EMAIL:[email protected] 転載する場合は出典を明記してください: http://blog.csdn.net/attilax Proj.amazon .spider public オブジェクト hanlder(オブジェクト obj, ClassLibrary1.com.attilax.lang.FilterFilterChain nextChain) { 辞書 <文字列,オブジェクト> ormObj = 新しい 辞書<文字列, object>(); ormObj.Add("テーブル", "ecs_goods"); 辞書<文字列,オブジェクト>; flds_frm = (辞書<文字列,オブジェクト>)obj; 辞書<文字列、 オブジェクト> flds = 新しい 辞書<文字列, object>(); flds.Add("商品名", flds_frm["タイトル"]); flds.Add("goods_desc", "goods_descxxx"); // flds.Add("good_nam ormObj.Add( "フィールド", flds); AtiOrmX ormx = (AtiOrmX)新しい IocX().getBean("ormx"); return ormx.save(ormObj); } ------コード public class AtiOrmX { public IOC ioc; public オブジェクト save(オブジェクト ormObj) { 文字列 sql = SqlX.getSql(ormObj); コンソール.WriteLine("--orm sql:" + sql); DbUtil dbx = (DbUtil)ioc.getBean( "dbx"); return dbx.exec(sql) ); } } public クラス SqlX { public static string getSql( オブジェクト ormObj) { // throw new NotImplementedException(); 辞書<文字列、オブジェクト> ormobjMap = ((辞書<文字列,オブジェクト>)ormObj ) ; 辞書<文字列,オブジェクト> fldMap = (辞書<文字列,オブジェクト>)ormobjMap[ "fields"]; System.Collections .Generic.リスト<オブジェクト> flds = 新しい リスト<オブジェクト>>(); System.Collections.Generic.リスト<オブジェクト> fld_vals = 新しい リスト<オブジェクト>>(); foreach (var item in fldMap) { fld s.Add( item.Key); fld_vals.Add("'"+ item.Value+""); コンソール.WriteLine(item.Key) + item.Value); } 文字列 fld_s = ListX.join(",", flds); 文字列 v_s = ListX.join(",", fld_vals); 文字列 sql = " insert into " + ormobjMap["テーブル"] + "(@flds)values(@vs)"; sql = sql.Replace("@flds", fld_s); sql = sql.Replace("@vs", v_s); return sql; } } public class DbUtil { public オブジェクト exec(string sql) { MySqlConnection mysqlcon = this.getmysqlcon(); mysqlcon.Open(); MySqlCommand mysqlcom = new MySqlCommand(sql, mysqlcon); int r = mysqlcom.ExecuteNonQuery(); mysqlcom.Dispose(); mysqlcon.Close(); mysqlcon.Dispose(); return r; } ------ioc facMap.Add("dbx",() => {
1. オルムのゴール
1.1. ニュースobj
1.2.Hb のapi(meger,save,update,del)
2. オームの概念
3. アニメーション态obj