問題タブ [ibatis]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 休止状態対 iBATIS
新製品のリエンジニアリングのために、Java から最適なフレームワークを選択している最中です。モデルのデータベースに依存しないアプローチを検討しているため、iBATIS または Hibernate を使用した Struts + Spring の間のオプションに取り組んでいます。どちらも永続性を提供するため、どちらが最適かアドバイスをお願いします。
sql - iBatis で大なりまたは等しい SQL ステートメントを実装するにはどうすればよいですか?
私がしたい私のSQL文で言ってみましょう:
iBatis でこれを行うにはどうすればよいですか?
java - iBatis-ヘッダー詳細質問
iBatisを使用する既存のアプリにいくつかの新しい機能を追加しようとしていますが、設計上の決定の1つに少し行き詰まっています。
新しいフィールドを追加したい既存のクラス(クラスAと呼びます)があります。これらのフィールドはタイプBになります。
クエリは外部結合を介してBを結合します。
だからそれは次のようなものになります
}
私はこれをWebアプリで使用しています。最初のページで「A」のリストを返し、次にBの横にリンクを配置します。
例えば:
等
(注:レコードA4にはBへのリンクがないため、上記の外部結合)
「A」の最初のフェッチでは、Bレコードが存在することだけを知りたいのですが、その主キーは、B詳細レコードへのリンクを提示することです。だから私の問題は、「A」オブジェクトに「B」の完全に入力されたリストを作成せずにこれを行うにはどうすればよいですか?
java - データベース接続がトランザクション内にあることをアサートする方法は?
オブジェクト/リレーショナル マッパーを使用してデータベースと通信しています。私の場合のライブラリは、トランザクション管理にも使用されるiBatisです。しかし、最近、文書化startTransaction()
されたetc. が呼び出されたにもかかわらず、実際には iBatis がトランザクションを開始しないというケースがありました。いくつかのデバッグの後、私の側に設定ミスがあることがわかりました。
iBatis のせいにする人もいるかもしれませんが、今後はそのような誤解を避けたいと思います。だからここに質問があります:
現在のデータベース接続がトランザクションで実行されていることをプログラムでアサートするにはどうすればよいですか?
私が使用しているデータベースは、Oracle、MySQL、およびH2 (テスト用) です。
xml - IntelliJ IDEA で xml ファイルをロードする方法
IntelliJ は、sources フォルダーの下に xml ファイルを見つけられません。
例) src/net/saltfactory/domain/PersonSqlMap.xml
しかし、それをコピーしてフォルダを貼り付けると、IntelliJはxmlファイルを見つけます
例) out/net/saltfactory/domain/PersonSqlMap.xml
XML ファイルを out フォルダーにコピー アンド ペーストしないでください。
助けて
jdbc - iBatis 3 - JNDI 構成の例
iBatis フレームワークは、バージョン 2 と 3 の間で大幅に微調整されたため、構成ファイル (現在は MapperConfig.xml と呼ばれることが多い) でさえも異なります。
そうは言っても、iBatis で JDBC 接続プールを作成する方法に関する例はオンラインでたくさんありますが、JNDI でそれを行う方法に関する例は 1 つも見つかりませんでした。更新されたユーザー ガイドがhttp://svn.apache.org/repos/asf/ibatis/java/ibatis-3/trunk/doc/en/iBATIS-3-User-Guide.pdfにあります。 19 ページの JNDI 設定を確認しましたが、それでもデータベースと正しく通信できませんでした。
iBatis 3 での JDNI (コンテナ管理の接続プール) の実際の例は大歓迎です!!
java - Ibatis マッピングで null 日付に対処する方法
結果マッピングの1つに次のものがあります。
基本的にupdateDate
は を受け入れるセッターですDate
。ただし、データベースにある場合もupdateDate
ありnull
ます。そのような場合、デフォルトの日付を01/01/1900
.
ただし、上記のマッピングではupdateDate
、DB から nullの場合に次のエラーが表示されます
sql - iBatis 循環参照の質問
Office オブジェクトと Device オブジェクトがあります。オフィスにはデバイスがあり、デバイスはオフィスに属しています。そのため、Office オブジェクトを取得すると Office.Device 参照が設定され、Device オブジェクトにはそれが属する Office オブジェクトが含まれている必要があります。それは私が推測する循環参照です。
これをiBATISでやりたいのですが、やり方がわかりません。
「私を呼び出したばかりのresultMapによって作成されたオブジェクトにこのプロパティを設定する」ことができるresultMapが必要なようです。代わりに、このプロパティ (オブジェクト) に別のクエリ (N+1、私は知っています) を設定するか、結果セットとこの別の resultMap を使用してこのプロパティに設定します。
このシナリオのために別の resultMap を作成してもかまいません。
別の完全に受け入れられる答えは、スキーマに欠陥があるため、iBATIS はこれを行わないというものです。その場合は、他のオプションをいくつか教えてください。
java - iBatis ORMでログインする方法
iBatis + Spring を集中的に使用します。DB から取得するものはすべて、ストアド プロシージャを介してフェッチされます。問題のトラブルシューティングを行う際に、SP に送信された正確なパラメーターと実行された SP の名前を知りたいことがあります。現在、コードをデバッグすることでこれを行っています (これは面倒です)。SP の名前 + パラメータ値を出力するように、iBatis にある種のロギングを追加したいと考えています。私たちは log4j を使用しており、以下は iBatis 構造です。
マッピング:
DAO から iBatis を呼び出す
ご覧のとおり、パラメーターはHashMap
. HashMap
およびプロシージャ名をパラメータとして取り、ハッシュマップとプロシージャ名のすべてのキーと値のペアをログに出力する独自のクラス+メソッドを作成できます。ただし、これを行うと... SP を呼び出す前に、その呼び出しをすべての DAO に追加する必要があります。
これに対するより簡単な解決策はありますか?すべてのコードに再び触れるのを避けることができますか?
nhibernate - IBatis.Net DataMapper の開発は活発に行われていますか?
IBatis.Net DataMapper の開発は活発に行われていますか? .Net 3.5 のバージョンはありますか。アノテーションをサポートする iBatis3 のリリースを計画しているため、iBatis Java DataMapper で多くの活動が見られました。対応する .Net のステータスは?